File: move-element-and-scroll.html

package info (click to toggle)
firefox-esr 115.15.0esr-1~deb12u1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 3,659,216 kB
  • sloc: cpp: 6,676,686; javascript: 5,690,965; ansic: 3,328,546; python: 1,120,594; asm: 397,163; xml: 180,531; java: 178,838; sh: 68,930; makefile: 20,999; perl: 12,595; objc: 12,561; yacc: 4,583; cs: 3,846; pascal: 2,840; lex: 1,720; ruby: 1,079; exp: 762; php: 436; lisp: 258; awk: 247; sql: 66; sed: 54; csh: 10
file content (36 lines) | stat: -rw-r--r-- 1,448 bytes parent folder | download | duplicates (24)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<!DOCTYPE html>
<head>
  <title>Images with loading='lazy' load being moved to another document
         and then scrolled to</title>
  <script src="/resources/testharness.js"></script>
  <script src="/resources/testharnessreport.js"></script>
  <script src="common.js"></script>
</head>

<body>
  <div id="tall_div" style="height:1000vh"></div>
  <div id="below_viewport_div"></div>
  <img id="below_viewport" src='resources/image.png?below_viewport' loading="lazy">

  <script>
    const tall_div = document.getElementById("tall_div");
    const below_viewport_element = document.getElementById("below_viewport");
    const below_viewport_div = document.getElementById("below_viewport_div");

    async_test(function(t) {
      below_viewport_element.onload =
        t.unreached_func("The below viewport image should not load");
      t.step_timeout(t.step_func_done(), 1000);
      const iframe = document.createElement('iframe');
      iframe.setAttribute("style", "display:none");
      iframe.srcdoc = "<body></body>";
      iframe.onload = () => {
        const adopted_img = iframe.contentDocument.adoptNode(below_viewport_element);
        iframe.contentDocument.body.appendChild(adopted_img);
        below_viewport_div.scrollIntoView();
      };
      document.body.insertBefore(iframe, tall_div);
    }, "Test that <img> below viewport is not loaded when moved to another " +
       "document and then scrolled to");
</script>
</body>