test_bug985988.html (2639B)
1 <!DOCTYPE HTML> 2 <html> 3 <!-- 4 https://bugzilla.mozilla.org/show_bug.cgi?id=985988 5 --> 6 <head> 7 <meta charset="utf-8"> 8 <title>Test for Bug 985988</title> 9 <script src="/tests/SimpleTest/SimpleTest.js"></script> 10 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> 11 <script type="application/javascript"> 12 13 /** Test for Bug 985988 */ 14 15 function handler() { 16 return false; 17 } 18 19 function reversedHandler() { 20 return true; 21 } 22 23 function test() { 24 var t = document.getElementById("testtarget"); 25 26 t.onclick = handler; 27 var e = new MouseEvent("click", {cancelable: true}); 28 t.dispatchEvent(e); 29 ok(e.defaultPrevented, "Should have prevented default handling."); 30 31 t.onclick = reversedHandler; 32 e = new MouseEvent("click", {cancelable: true}); 33 t.dispatchEvent(e); 34 ok(!e.defaultPrevented, "Shouldn't have prevented default handling."); 35 36 t.onmouseover = handler; 37 e = new MouseEvent("mouseover", {cancelable: true}); 38 t.dispatchEvent(e); 39 ok(e.defaultPrevented, "Should have prevented default handling."); 40 41 t.onmouseover = reversedHandler; 42 e = new MouseEvent("mouseover", {cancelable: true}); 43 t.dispatchEvent(e); 44 ok(!e.defaultPrevented, "Shouldn't have prevented default handling."); 45 46 // error does not have reversed meaning for handler return value on 47 // non-globals. 48 t.onerror = handler; 49 e = new ErrorEvent("error", {cancelable: true}); 50 t.dispatchEvent(e); 51 ok(e.defaultPrevented, "Should have prevented default handling."); 52 53 t.onerror = reversedHandler; 54 e = new ErrorEvent("error", {cancelable: true}); 55 t.dispatchEvent(e); 56 ok(!e.defaultPrevented, "Shouldn't have prevented default handling."); 57 58 // error has reversed meaning for handler return value on globals. 59 t = document.getElementById("testtarget2").contentWindow; 60 t.onerror = reversedHandler; 61 e = new ErrorEvent("error", {cancelable: true}); 62 t.dispatchEvent(e); 63 ok(e.defaultPrevented, "Should have prevented default handling."); 64 65 t.onerror = handler; 66 e = new ErrorEvent("error", {cancelable: true}); 67 t.dispatchEvent(e); 68 ok(!e.defaultPrevented, "Shouldn't have prevented default handling."); 69 70 SimpleTest.finish(); 71 } 72 73 SimpleTest.waitForExplicitFinish(); 74 addLoadEvent(test); 75 76 </script> 77 </head> 78 <body onload="test()"> 79 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=985988">Mozilla Bug 985988</a> 80 <p id="display"></p> 81 <div id="content" style="display: none"> 82 83 </div> 84 <a href="#" id="testtarget">test target</a> 85 <iframe id="testtarget2"></iframe> 86 <pre id="test"> 87 </pre> 88 </body> 89 </html>