fix: inline images onload (#1174)

* fix: inline images onload

* add integration test case

* Apply formatting changes

* Create small-olives-arrive.md

---------

Co-authored-by: Yun Feng <yun.feng0817@gmail.com>
This commit is contained in:
fukang wang
2023-03-13 13:56:09 +08:00
committed by GitHub
parent 1f8e5d5675
commit e7f0c808c3
4 changed files with 39 additions and 1 deletions

View File

@@ -736,6 +736,7 @@ function serializeElementNode(
const oldValue = image.crossOrigin;
image.crossOrigin = 'anonymous';
const recordInlineImage = () => {
image.removeEventListener('load', recordInlineImage);
try {
canvasService!.width = image.naturalWidth;
canvasService!.height = image.naturalHeight;
@@ -755,7 +756,7 @@ function serializeElementNode(
};
// The image content may not have finished loading yet.
if (image.complete && image.naturalWidth !== 0) recordInlineImage();
else image.onload = recordInlineImage;
else image.addEventListener('load', recordInlineImage);
}
// media elements
if (tagName === 'audio' || tagName === 'video') {