tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

iframe-loading-eager.html (2088B)


      1 <!DOCTYPE html>
      2 <head>
      3  <title>Iframes with loading='eager' load immediately regardless of their
      4         position with respect to the viewport.</title>
      5  <link rel="author" title="Scott Little" href="mailto:sclittle@chromium.org">
      6  <link rel="help" href="https://github.com/scott-little/lazyload">
      7  <script src="/resources/testharness.js"></script>
      8  <script src="/resources/testharnessreport.js"></script>
      9 </head>
     10 
     11 <script>
     12  const t = async_test("Test that iframes with loading='eager' load " +
     13                       "immediately regardless of their position with " +
     14                       "respect to the viewport.");
     15 
     16  let has_in_viewport_loaded = false;
     17  const in_viewport_iframe_onload = t.step_func(() => {
     18    assert_false(has_in_viewport_loaded,
     19                 "The in_viewport element should load only once.");
     20    has_in_viewport_loaded = true;
     21  });
     22 
     23  let has_below_viewport_loaded = false;
     24  const below_viewport_iframe_onload = t.step_func(() => {
     25    assert_false(has_below_viewport_loaded,
     26                 "The below_viewport element should load only once.");
     27    has_below_viewport_loaded = true;
     28  });
     29 
     30  window.addEventListener("load", t.step_func_done(() => {
     31    assert_true(has_in_viewport_loaded,
     32                "The in_viewport element should have loaded before " +
     33                "window.load().");
     34    assert_true(has_below_viewport_loaded,
     35                "The below_viewport element should have loaded before " +
     36                "window.load().");
     37  }));
     38 </script>
     39 
     40 <body>
     41  <iframe id="in_viewport" src="resources/subframe.html?in-viewport"
     42          loading="eager" width="200px" height="100px"
     43          onload="in_viewport_iframe_onload();"></iframe>
     44  <div style="height:1000vh;"></div>
     45 
     46  <!-- The below_viewport element loads very slowly in order to ensure that the
     47       window load event is blocked on it. -->
     48  <iframe id="below_viewport"
     49          src="resources/subframe.html?below-viewport&pipe=trickle(d1)"
     50          loading="eager" width="200px" height="100px"
     51          onload="below_viewport_iframe_onload();"></iframe>
     52 </body>