diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
commit | 26a029d407be480d791972afb5975cf62c9360a6 (patch) | |
tree | f435a8308119effd964b339f76abb83a57c29483 /testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multicol.html | |
parent | Initial commit. (diff) | |
download | firefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz firefox-26a029d407be480d791972afb5975cf62c9360a6.zip |
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multicol.html')
-rw-r--r-- | testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multicol.html | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multicol.html b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multicol.html new file mode 100644 index 0000000000..20d52d4dfa --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-img-element/image-loading-lazy-multicol.html @@ -0,0 +1,44 @@ +<!DOCTYPE html> +<head> + <title>Images with loading='lazy' load when in the viewport</title> + <link rel="author" title="Chris Harrelson" href="mailto:chrishtr@chromium.org"> + <link rel="help" href="https://github.com/scott-little/lazyload"> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> +</head> + +<script> + const t = async_test("Test that images with loading='lazy' under multicol load once they enter the viewport."); + + let has_in_viewport_loaded = false; + let has_window_loaded = false; + + const in_viewport_img_onload = t.step_func(function() { + assert_false(has_in_viewport_loaded, "The in_viewport element should load only once."); + has_in_viewport_loaded = true; + }); + + window.addEventListener("load", t.step_func_done(function() { + assert_true(has_in_viewport_loaded, "The in_viewport element should have loaded before window.load()."); + assert_false(has_window_loaded, "The window load event should only fire once."); + has_window_loaded = true; + })); + +</script> + +<div class=texty style="column-count: 2; height: 300px"> + <div style="border: 1px solid black"> + <h2 style="column-span: all"></h2> + <img loading="lazy" src="resources/image.png?loading-lazy-multicol-first" width="160" height="120" + onload="in_viewport_img_onload()"> + </div> +</div> + + <!-- + This async script loads very slowly in order to ensure that, if the + below_viewport element has started loading, it has a chance to finish + loading before window load event fires, so that the test will dependably fail + in that case instead of potentially passing depending on how long different + resource fetches take. + --> + <script async src="/common/slow.py"></script> |