<!DOCTYPE HTML> <html> <!-- https://bugzilla.mozilla.org/show_bug.cgi?id=459848 --> <head> <title>Test for Bug 459848</title> <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> </head> <body> <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=459848">Mozilla Bug 459848</a> <p id="display"></p> <div id="content" style="display: none"> </div> <pre id="test"> <script type="application/javascript"> /** Test for Bug 459848 **/ var ifr1, irf2; var doc1, doc2; function testDocument(d) { d.documentElement.setAttribute("onload", "this.setAttribute('didRun', 'true');"); var e = d.createEvent("Events"); e.initEvent("load", true, true); d.documentElement.dispatchEvent(e); } function testDoc2() { testDocument(doc2); isnot(doc2.documentElement.getAttribute("didRun"), "true", "Shouldn't have run an event listener"); SimpleTest.finish(); } function startTest() { var ifr1 = document.getElementById('iframe1'); var ifr2 = document.getElementById('iframe2'); doc1 = ifr1.contentDocument; doc2 = ifr2.contentDocument; testDocument(doc1); is(doc1.documentElement.getAttribute("didRun"), "true", "Should have run an event listener"); ifr2.parentNode.removeChild(ifr2); setTimeout(testDoc2, 0); } SimpleTest.waitForExplicitFinish(); addLoadEvent(startTest); </script> </pre> <iframe id="iframe1"></iframe> <iframe id="iframe2"></iframe> </body> </html>