检测参数是否为Javascript HTML Element数据类型

时间:2010-01-31 22:34:55

标签: javascript html cross-browser

我需要一个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测试解决方案吗?

1 个答案:

答案 0 :(得分:1)

你想要这个:

if (element.nodeType === element.ELEMENT_NODE)
// Element.prototype.ELEMENT_NODE === 1

if (element.nodeType)几乎总是如此。例如,注释的nodeType是8,因此即使它不是,它也会被检测为带有代码的元素。

相关问题