t4y3
8/2/2018 - 9:26 AM

Passive EventListenerをサポートしているか判定

Passive EventListenerをサポートしているか判定

/**
 * Passive EventListenerをサポートしているか判定
 * @see https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md#feature-detection
 */
export default function isSupportsPassive() {
  let supportsPassive = false;
  try {
    let opts = Object.defineProperty({}, 'passive', {
      get: function() {
        supportsPassive = true;
      }
    });
    window.addEventListener('testPassive', null, opts);
    window.removeEventListener('testPassive', null, opts);
  } catch (e) {
    // Not support
  }
  return supportsPassive;
}