117. event delegation
シェアしよう
少し工夫が必要 - accepted / - tried
jQuery.on()みたいな関数を作ってください。
jQueryではselectorを使ってelementを特定しているが、ここではシンプルにpredicate関数を使う。
onClick( // root element document.body, // predicate (el) => el.tagName.toLowerCase() === 'div', function(e) { console.log(this); // this logs all the `div` element })
-
event.stopPropagation() とevent.stopImmediatePropagation() もサポートしてください。
-
本当のevent listenerはroot elementに一つだけ登録してください。
関連するリスト
Ideas and Concepts