tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

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>