test-003.html (1753B)
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title>Shadow DOM Test: A_05_01_03</title> 5 <link rel="author" title="Sergey G. Grekhov" href="mailto:sgrekhov@unipro.ru"> 6 <link rel="help" href="http://www.w3.org/TR/2013/WD-shadow-dom-20130514/#event-retargeting"> 7 <meta name="assert" content="Event Retargeting:Event retargeting for fallback content"> 8 <script src="/resources/testharness.js"></script> 9 <script src="/resources/testharnessreport.js"></script> 10 <script src="../../../../html/resources/common.js"></script> 11 <script src="../../../resources/shadow-dom-utils.js"></script> 12 </head> 13 <body> 14 <div id="log"></div> 15 <script> 16 var A_05_01_03_T01 = async_test('A_05_01_03_T01'); 17 18 A_05_01_03_T01.step(unit(function (ctx) { 19 var d = newRenderedHTMLDocument(ctx); 20 21 d.body.innerHTML = '' + 22 '<div id="main">' + 23 '<div id="shadow-root">' + 24 '<span>1</span>' + 25 '<span>2</span>' + 26 '<span>3</span>' + 27 '</div>' + 28 '</div>'; 29 30 var ul = d.querySelector('#shadow-root'); 31 var s = ul.attachShadow({mode: 'open'}); 32 33 //make shadow subtree 34 var div = document.createElement('div'); 35 div.innerHTML = '<slot name="shadow"><span id="flbk">Fallback item</span></slot>'; 36 s.appendChild(div); 37 38 d.body.addEventListener('click', A_05_01_03_T01.step_func(function (event) { 39 assert_equals(event.target.getAttribute('id'), 'shadow-root', 'Information about ' + 40 'event target crossing the shadow boundaries should be adjusted for the fallback ' + 41 'content'); 42 }), false); 43 44 var event = d.createEvent('HTMLEvents'); 45 event.initEvent ("click", true, false); 46 s.querySelector('#flbk').dispatchEvent(event); 47 48 A_05_01_03_T01.done(); 49 })); 50 </script> 51 </body> 52 </html>