test_bug28293.html (1808B)
1 <!DOCTYPE HTML> 2 <html> 3 <!-- 4 https://bugzilla.mozilla.org/show_bug.cgi?id=28293 5 --> 6 <head> 7 <title>Test for Bug 28293</title> 8 <script src="/tests/SimpleTest/SimpleTest.js"></script> 9 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> 10 <script> 11 scriptInsertedExternalExecuted = false; 12 res = 'A'; 13 14 SimpleTest.waitForExplicitFinish(); 15 onload = function () { 16 17 res+='2'; 18 19 s = document.createElement('script'); 20 s.textContent="res+='g';"; 21 s.defer = true; 22 document.body.appendChild(s); 23 24 res+='3'; 25 26 s = document.createElement('script'); 27 s.textContent="res+='i';done()"; 28 s.defer = true; 29 document.body.appendChild(s); 30 31 res+='4'; 32 } 33 34 function done() { 35 is(res, "AacBCDEFGeHIJb1M2g3i", "scripts executed in the wrong order"); 36 ok(scriptInsertedExternalExecuted, "Dynamic script did not block load"); 37 SimpleTest.finish(); 38 } 39 </script> 40 </head> 41 <body> 42 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=28293">Mozilla Bug 28293</a> 43 44 <script defer> 45 res += 'a'; 46 </script> 47 <script defer src="data:text/plain,res+='b'"></script> 48 <script defer> 49 res += 'c'; 50 </script> 51 <script> 52 res += 'B'; 53 </script> 54 <script> 55 res += 'C'; 56 57 s = document.createElement('script'); 58 s.textContent="res+='D';"; 59 document.body.appendChild(s); 60 61 res += 'E'; 62 </script> 63 <script> 64 res += 'F'; 65 document.addEventListener("DOMContentLoaded", function() { 66 res += '1' 67 s = document.createElement('script'); 68 s.src="file_bug28293.sjs?res+='M';"; 69 document.body.appendChild(s); 70 }); 71 res += 'G'; 72 </script> 73 <script defer> 74 res += 'e'; 75 </script> 76 <script src="file_bug28293.sjs?res+='H';"></script> 77 <script> 78 res += 'I'; 79 s = document.createElement('script'); 80 s.src="file_bug28293.sjs?scriptInsertedExternalExecuted=true;"; 81 document.body.appendChild(s); 82 res += 'J'; 83 </script> 84 85 </body> 86 </html>