Clarify image.decode() failure on lazy-loaded images #38034
Labels
area: DOM/CSSOM
Content:WebAPI
Web API docs
help wanted
If you know something about this topic, we would love your help!
MDN URL
https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/decode
What specific section or headline is this issue about?
Missing information
What information was incorrect, unhelpful, or incomplete?
As noted in https://stackoverflow.com/questions/65146920/domexception-invalid-image-request, the decode() function will throw
EncodingError: Invalid image request.
on images withloading="lazy"
that have not yet loaded in Firefox; it will not do so in Chrome. This is either a browser bug, an indication that the page information ("This can be used to initiate loading of the image") is somewhat incomplete/misleading, or just of a case of undefined behavior which might deserve a note.What did you expect to see?
Either just a note that this
loading="lazy"
case fails in Firefox on images that have not yet loaded, or an explanation of the difference between loading and decoding/when decoding might fail if this is actually a symptom of a larger degree of complexity.edit: Per further testing, calling decode() in an
onload
handler works and functions correctly on aloading="lazy"
image; it's only calling it too early that fails.Do you have any supporting links, references, or citations?
The only semi-relevant Firefox bug I found is https://bugzilla.mozilla.org/show_bug.cgi?id=1758035, which links to the spec. It's still not entirely clear from the spec text to me whether the function is explicitly supposed to interact with/wait for loading, and if so exactly how.
Do you have anything more you want to share?
No response
MDN metadata
Page report details
en-us/web/api/htmlimageelement/decode
The text was updated successfully, but these errors were encountered: