2

当我的 HTML 看起来像这样时:

<div id="aa1"><h1>aaaa</h1><h2 class="center">bbbb</h2></div>

我的javascript看起来像这样:

var list= document.getElementById("aa1").childNodes;

我得到一个如下所示的节点列表:

list= NodeList[h1,h2.center]

但是,如果我的 HTML 看起来像这样:

<div id="aa1"><h3>cccc</h3><h1>aaaa</h1><h2 class="center">bbbb</h2></div>

我得到一个如下所示的节点列表:

list= NodeList[h3,h1,h2.center]

所以,我想做这样的事情:

if(list[0]==="<h3>"){console.log("yes, list[0] = <h3>");}

但这不起作用。

如何获取节点列表中每个标签的标识?

4

1 回答 1

4

使用该.nodeName物业。

if(list[0].nodeName==="H3"){console.log("yes, list[0] = <h3>");}

在一些罕见的极端情况下,名称可能会返回小写,因此为了更加安全,您可以添加.toUpperCase()after .nodeName


此外,虽然您没有要处理的文本节点,但如果有,您可以使用.children代替.childNodes.

于 2013-05-14T00:36:27.643 回答