117. event delegation

JavaScript

少し工夫が必要  - accepted / - tried

Event Delegationとは?

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  })
  1. event.stopPropagation()event.stopImmediatePropagation() もサポートしてください。

  2. 本当のevent listenerはroot elementに一つだけ登録してください。

関連するリスト

Ideas and Concepts

常にもっといい方法を求めよう。