<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>getAttribute()</title></head><body> <p id="intro">课程列表</p> <ul> <li title="第1个li">HTML</li> <li>CSS</li> <li title="第3个li">JavaScript</li> <li title="第4个li">Jquery</li> <li>Html5</li> </ul> <p>以下为获取的不为空的li标签title值:</p><script type="text/javascript"> var con = document.getElementsByTagName("li"); var can = con.getAttribute("title"); alert(can); </script> </body></html>
4 回答
已采纳
qq_杀意隆_0
TA贡献93条经验 获得超29个赞
var con = document.getElementsByTagName("li")[0]; // 或 var con = document.getElementsByTagName("li")[2]; // 或 var con = document.getElementsByTagName("li")[3];
就可以了。
document.getElementsByTagName("li")
获得的是5个li元素的集合,是一个类数组对象。这个集合不能直接运用getAttribute方法。要通过索引取得里面的元素,如
document.getElementsByTagName("li")[0]
表示取得第一个li元素。元素就可以用getAttribute方法。如:
document.getElementsByTagName("li")[0].getAttribute('title'); //返回 "第1个li"
document.getElementsByTagName("li")[1].getAttribute('title'); //返回 ""
document.getElementsByTagName("li")[2].getAttribute('title'); //返回 "第3个li"
JH鹰
TA贡献14条经验 获得超1个赞
是的 你获取的是 li 的集合 5个li你全获取了 getAttribute 获取属性只会获取一个li的属性,如果你给电脑一个集合电脑无法识别肯定说, 哎呀!哥们你给的不是一个函数,我不认识
var con = document.getElementsByTagName("li");
var can = con[0].getAttribute("title");
console.log(can);
你按我修改的试试 ,设置也是一样,要给的明确;认可就给个 赞ok
添加回答
举报
0/150
提交
取消