过去,我们使用浏览器嗅探来推断某些事件或功能是否可用。我知道浏览器嗅探已被“弃用”或“避开”,以支持功能嗅探。我想知道如何检查是否可以处理某个事件。
以DOMNodeInserted
为例。它受Chrome,FF和Safari的支持,但不受IE支持。如果此活动可用,我该如何嗅闻?有图书馆吗?你们怎么做适当的功能嗅探?
答案 0 :(得分:5)
你无法检测到突变事件,而且现代化不适用于此(因为人们会将这种情况作为事实答案吐出来)。
“检测”对突变事件的支持的唯一方法是尝试触发事件。伪代码:
var div = document.createElement('div'), supported = false;
div.addEventListener('DOMNodeInserted', function(){ supported = true; });
div.appendChild(div.cloneNode(true));
请注意,如果代码是线性代码,则上述代码将无法正常工作,因为事件侦听器是异步的。但是,一般的想法是有效的,也许最好用回调来实现。
答案 1 :(得分:3)
答案 2 :(得分:0)
要回答通用 - 如何进行功能嗅探 - 我使用jQuery.support对象。