确定Javascript中元素的类型

时间:2011-12-17 11:26:48

标签: javascript dom

我有这段代码:

var parent = links[i].parentNode;

我想写一些类似的东西:

if (parent.typeOfElement == "div") {
 ...
}

我该怎么做?

2 个答案:

答案 0 :(得分:2)

您可以使用.tagName,(对于元素)与.nodeName相同。

所以:

if (parent.tagName === "DIV") {
   //
}

请注意,标签名称应该以大写形式返回给HTML,但是在XML(包括xhtml)中,它应该保留原始案例 - 对于xhtml,它应该是小写的。为了安全起见,并允许将来对文档类型进行任何更改,并允许非标准浏览器行为,您可能希望转换为全部更高或更低:

if (parent.tagName.toUpperCase() === "DIV") {
   //
}

根据我的经验.tagName经常被使用,但我收集some consider .nodeName a better choice,因为它适用于属性(以及更多)和元素。

答案 1 :(得分:1)

if (parent.nodeName == "div") {
    ...
 }

请参阅:http://www.javascriptkit.com/domref/elementproperties.shtml