我们很容易得到元素节点,文本节点,那我们怎么得到属性节点的呢???
对于获取属性节点,可以使用attributes属性。具体使用:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <body> <ul> <li id='a' class='acv' name='name_a'>javascript</li> <li>HTML/CSS</li> <li>jQuery</li> </ul> <script type='text/javascript'> //attributes属性和getElementsByTagName属性类似是返回集合类型值 var li = document.getElementsByTagName("li")[0].attributes; for (var i = 0; i < li.length; i++) { var obj = li[i]; document.writeln("这是遍历属性节点的"+obj.nodeName); document.writeln(obj.nodeValue); document.writeln(obj.nodeType+"<br>"); } //也可以单独调出该标签某个属性值——数字为索引 document.writeln("<br>"+"<br>"+"这是数字为索引的"+li[0].nodeName); document.writeln(li[0].nodeValue); document.writeln(li[0].nodeType+"<br>"+"<br>"); //也可以单独调出该标签某个属性值——属性名为索引 document.writeln("这是属性名为索引的"+li['name'].nodeName); document.writeln(li['name'].nodeValue); document.writeln(li['name'].nodeType); </script> </body> </body> </html>
可以复制运行。
该属性存取的是元素节点的所有属性值,是一个集合。和getElementsByTagName()返回值类似。
<div class="attr-class" id="attr-id">
这是文本
</div>
javascript DOM节点有多种类型,我们常用的有(对应上述html片段):
元素节点 [div]
属性节点 [class、id]
文本节点 [这是文本]
document.getElementById("id");
document.getElementByClassName("class")