私はシャドウ ルートを使用してアプリをshadow.children[i].addEventListener('click', fn);
書いています。
var $shadow = function(shadow, el, fn){
console.log(shadow);
console.log(el);
var children = shadow.children;
for (var i = 0; i < children.length; i++) {
var child = children[i];
console.log('child '+child.id+', el '+el);
if (child.id === el) {
console.log('match');
return shadow.children[i].addEventListener('click', fn);
break;
}
}
}
カスタム要素から次のように呼び出します。
$shadow(shadow, 'd', alert('yap!'));
問題は、要素が呼び出されると関数が直接実行され、指定された要素の「クリック」アクションを「リッスン」するのを待たないことです。
それを修正する方法はありますか?