check passive events
一、作用
二、支持被动浏览器事件
备注
canUseDOM()由 ExecutionEnvironment#canUseDOM 实现
export let passiveBrowserEventsSupported: boolean = false;
// Check if browser support events with passive listeners
// 检查浏览器是否支持带有被动监听器的事件
// https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#Safely_detecting_option_support
if (canUseDOM) {
try {
const options: {
passive?: void;
} = {};
Object.defineProperty(options, 'passive', {
get: function () {
passiveBrowserEventsSupported = true;
},
});
window.addEventListener('test', options, options);
window.removeEventListener('test', options, options);
} catch (e) {
passiveBrowserEventsSupported = false;
}
}