gpt4 book ai didi

javascript - 检测是否支持事件监听器

转载 作者:可可西里 更新时间:2023-11-01 01:51:32 25 4
gpt4 key购买 nike

是否可以检测某些浏览器是否支持某些事件?我可以检测浏览器是否支持 document.addEventListener,但我需要知道它是否支持事件 DOMAttrModified。 Firefox 和 Opera 支持它,但 Chrome 和其他浏览器不支持。

最佳答案

更新的答案:

,您可以对此进行特征检测。创建一个元素,监听事件,并更改元素的属性。在我的测试中,您甚至不必将元素添加到 DOM 树,这使它成为一个很好的、包含的特征检测。

例子:

function isDOMAttrModifiedSupported() {
var p, flag;

flag = false;
p = document.createElement('p');
if (p.addEventListener) {
p.addEventListener('DOMAttrModified', callback, false);
}
else if (p.attachEvent) {
p.attachEvent('onDOMAttrModified', callback);
}
else {
// Assume not
return false;
}
p.setAttribute('id', 'target');
return flag;

function callback() {
flag = true;
}
}

Live copy

Firefox 触发对上述所有修改的回调; Chrome 都没有。


原始答案:

您可以通过功能检测是否支持某些 事件,如this handy page 所示.我不知道您是否可以专门针对那个进行测试,但如果可以的话,该代码很可能会让您入门。

更新:我dumped Kangax's code into JSBin并尝试了一下,看起来嗅探技术并不适用于该事件(除非我的名字拼写错误或其他原因;Firefox 显示“false”)。但我上面的技术确实如此。

关于javascript - 检测是否支持事件监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4562354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com