イベントを正しくバブリングするのに問題があります。委任されたイベントを信じています。
次のようなマークアップがあります。
<div id="wrapper">
<!-- more HTML -->
<div class="clear">
<a href="#">
Clear completed <span>items</span>
</a>
</div>
</div>
にイベントを追加したい.clear
ので、 にアタッチされている委任イベント内に処理コードを配置し#wrapper
ます。私の問題は、イベントがバブルしていないように見えることです。言い換えると:
getElementById('wrapper').addEventListener('click', app.controller.update, true);
app.controller.update = function(e){
console.log(e.target.nodeName) //returns either A or SPAN
while(e.target.nodeName !== 'DIV'){
//Infinite loop because no bubbling is happening
}
}
アイデア?はい、要素に直接アタッチできますが、すべてのイベントを 1 つのコンテナーに保持したいと考えています。いいえ、jQuery はありません。