我需要一个XB(跨浏览器)方法来检测参数是否是HTML元素。
使用以下代码在不同的浏览器中提供不同的结果:
Object.prototype.toString.call(element);
// returns in FF "[object HTMLDivElement]";
// returns in IE "[object Object]";
我发现的另一种方法是:
if(element.nodeType) // true for a HTML Element;
有人知道XB测试解决方案吗?
答案 0 :(得分:1)
你想要这个:
if (element.nodeType === element.ELEMENT_NODE)
// Element.prototype.ELEMENT_NODE === 1
if (element.nodeType)
几乎总是如此。例如,注释的nodeType是8,因此即使它不是,它也会被检测为带有代码的元素。