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