1.與我前面的隨筆獲取元素的那些方法不同http://www.cnblogs.com/GreenLeaves/p/5689075.html 獲取元素屬性的方法getAttribute()不屬於document對象,所以不能通過document對象調用。注意:他只能通過元素節點對象調用,但是可以與獲取元素的方法getElementsByTagName()、getElementsById()等方法連用;如下代碼:
<body> <div id="target"> <div class="a"> </div> <div class="b"> </div> <div class="c"> </div> </div> <script type="text/javascript"> var elements = document.getElementById('target').getElementsByTagName('*'); for (var i = 0; i < elements.length; i++) { alert(elements[i].getAttribute('class')); } </script> </body>
輸出:a,b,c 說明:getAttribute()方法只能獲取單個元素節點的屬性值,且不屬於document對象,屬於單個元素節點對象;
2.在前面隨便中介紹的方法幾乎都是獲取元素節點的信息,setAttribute()有點不同,這個方法是用來設置節點的屬性值;他和getAttribute()一樣,也只能作用與單個元素節點,不屬於document對象;代碼如下:
<body> <div id="target"> <div class="a"> </div> <div class="b"> </div> <div class="c"> </div> </div> <script type="text/javascript"> var elements = document.getElementById('target').getElementsByTagName('*'); for (var i = 0; i < elements.length; i++) { elements[i].setAttribute('class','class'+i) alert(elements[i].getAttribute('class')); } </script> </body>
輸出:class0,class1,class2 說明:setAttribute()與getAttribute()一樣只能對單個元素節點進行賦值,且不屬於document對象,屬於單個元素節點對象;