test_bug386496.html 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <!DOCTYPE HTML>
  2. <html>
  3. <!--
  4. https://bugzilla.mozilla.org/show_bug.cgi?id=386496
  5. -->
  6. <head>
  7. <title>Test for Bug 386496</title>
  8. <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
  9. <SCRIPT Type="text/javascript" src="/tests/SimpleTest/EventUtils.js"></script>
  10. <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
  11. </head>
  12. <body>
  13. <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=386496">Mozilla Bug 386496</a>
  14. <p id="display"></p>
  15. <div id="content">
  16. <iframe style='display: block;' id="testIframe"
  17. src="data:text/html,<div><a id='a' href='http://a.invalid/'>Link</a></div>">
  18. </iframe>
  19. </div>
  20. <pre id="test">
  21. <script class="testbody" type="text/javascript">
  22. /** Test for Bug 386496 **/
  23. var frame = document.getElementById("testIframe");
  24. function testDesignMode() {
  25. var unloadRequested = false;
  26. frame.contentDocument.designMode = "on";
  27. frame.contentWindow.addEventListener("beforeunload", function() {
  28. unloadRequested = true;
  29. }, false);
  30. synthesizeMouseAtCenter(frame.contentDocument.getElementById("a"), {},
  31. frame.contentWindow);
  32. // The click has been sent. If 'beforeunload' event has been caught when we go
  33. // back from the event loop that means the link has been activated.
  34. setTimeout(function() {
  35. ok(!unloadRequested, "The link should not be activated in designMode");
  36. SimpleTest.finish();
  37. }, 0);
  38. }
  39. SimpleTest.waitForExplicitFinish();
  40. SimpleTest.waitForFocus(testDesignMode);
  41. </script>
  42. </pre>
  43. </body>
  44. </html>