element-render-blocking-041.html (1890B)
1 <!DOCTYPE html> 2 <meta name="timeout" content="long"> 3 <head> 4 <script src="/resources/testharness.js"></script> 5 <script src="/resources/testharnessreport.js"></script> 6 <script src="support/utils.js"></script> 7 <title>`link rel=expect` is unblocked for dynamically inserted anchor with name</title> 8 9 <link rel=expect href="#target" blocking="render"> 10 <script> 11 async_test((t) => { 12 requestAnimationFrame(() => { 13 t.step(() => assert_equals(document.getElementsByName("target").length, 1, "The target element should be present when rendering is unblocked")); 14 t.step(() => assert_equals(document.getElementById("last"), null, "the target element should unblock rendering")); 15 t.done(); 16 }); 17 }, "blocking defers frames until full parsing"); 18 </script> 19 </head> 20 <body> 21 <div id="first"> 22 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum augue 23 nibh, venenatis a ligula in, tempus pharetra urna. Fusce semper, velit 24 tincidunt lobortis sollicitudin, sapien velit fermentum odio, ultricies 25 tempor mi est eget ipsum egestas. 26 </div> 27 <script> 28 generateParserDelay(); 29 </script> 30 <a id="fold"> 31 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum augue 32 nibh, venenatis a ligula in, tempus pharetra urna. Fusce semper, velit 33 tincidunt lobortis sollicitudin, sapien velit fermentum odio, ultricies 34 tempor mi est eget ipsum egestas. 35 </a> 36 <script> 37 const target = document.createElement("a"); 38 target.name = "target"; 39 document.body.append(target); 40 </script> 41 <script> 42 generateParserDelay(); 43 </script> 44 <div id="last"> 45 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum augue 46 nibh, venenatis a ligula in, tempus pharetra urna. Fusce semper, velit 47 tincidunt lobortis sollicitudin, sapien velit fermentum odio, ultricies 48 tempor mi est eget ipsum egestas. 49 </div> 50 </body>