tor-browser

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

iframe-unload.html (1120B)


      1 <html>
      2 <title>visibilitychange fires on unload with iframes</title>
      3 <script src="/resources/testharness.js"></script>
      4 <script src="/resources/testharnessreport.js"></script>
      5 <div id="log"></div>
      6 <script>
      7 
      8 var frameDocs = [];
      9 var docsLoaded = 0;
     10 var numFrames = 3;
     11 
     12 var ast = new async_test("visibilitychange fires on unload with iframes");
     13 
     14 function startTest() {
     15  if (++docsLoaded < numFrames)
     16    return;
     17 
     18  ast.step(function () {
     19    frameDocs.push(window[0].document);
     20    frameDocs.push(window[0][0].document);
     21    frameDocs.push(window[0][1].document);
     22 
     23    for (var i = 0; i < frameDocs.length; ++i) {
     24      frameDocs[i].addEventListener(
     25          "visibilitychange",
     26          onVisibilityChange.bind(null, i), false);
     27    }
     28 
     29    document.body.removeChild(document.getElementById("frame1"));
     30  });
     31 }
     32 
     33 var checkedFrames = 0;
     34 
     35 function onVisibilityChange(i) {
     36  ast.step(function () {
     37    assert_equals(frameDocs[i].visibilityState, "hidden");
     38  });
     39  if (++checkedFrames >= numFrames) {
     40    ast.done();
     41  }
     42 }
     43 
     44 
     45 
     46 </script>
     47 <iframe id="frame1" src="resources/iframe-with-subframes.html"></iframe>
     48 </body>
     49 </html>