JavaScript within Shadow DOM best practices
I'm having trouble getting JavaScript to run properly within Shadow DOM elements I'm defining. Given the following code: <template id='testTemplate'> <div id='test'>Click to say hi</div> <script> var elem = document.querySelector('#test'); elem.addEventListener('click', function(e) { alert("Hi there"); }); </script> </template> <div id="testElement">Host text</div> <script> var shadow = document.querySelector('#testElement').createShadowRoot(); var template = document.querySelector('#testTemplate'); shadow.appendChild(template.content.cloneNode(true)); </script> document.querySelector is