イベントの伝播を止める
hogehoge - addEventListener の第三引数についてでイベントの bubbling と capturing について書いたけど、このイベントの伝播を止める方法が分かったのでメモ。
event.stopPropagation();
Firefox等ではこれで良し。IEとかでは
event.cancelBubble = true;
まとめるとこんな感じか
function hogeHandle( evt ){ evt = evt ? evt : event; if ( evt.stopPropagation ){ evt.stopPropagation(); } else if ( typeof(evt.cancelBubble) !== 'undefined' ){ evt.cancelBubble = true; } }
あとで検索してみたらいろいろ既出だった...orz