104.html (1313B)
1 <!DOCTYPE html> 2 <html><head> 3 <title> scheduler: adding defer attribute at runtime</title> 4 <script src="/resources/testharness.js"></script> 5 <script src="/resources/testharnessreport.js"></script> 6 <script src="testlib/testlib.js"></script> 7 </head> 8 <body> 9 10 <div id="test"></div> 11 <div id="log">FAILED (This TC requires JavaScript enabled)</div> 12 13 <script id="defer-script" src="scripts/include-1.js"></script> 14 <script src="scripts/include-2.js"></script> 15 16 <script> 17 var t = async_test(); 18 19 t.step(function() { 20 document.getElementById("defer-script").setAttribute("defer", "defer"); 21 }); 22 23 var ran_defer_check = false; 24 25 document.addEventListener("readystatechange", t.step_func(function () { 26 if (document.readyState == "interactive") { 27 ran_defer_check = true; 28 assert_array_equals(eventOrder, ["external script #1", "external script #2"]); 29 } 30 }), false); 31 32 addEventListener("load", t.step_func(function () { 33 assert_true(ran_defer_check); 34 assert_array_equals(eventOrder, ["external script #1", "external script #2"]); 35 t.done(); 36 }), false); 37 38 </script> 39 </body></html>