yu_1010
2019-03-13 18:25
//var text=con[i].title;
var text3=con[i].getAttribute("title");
这两条语句都能实现将title的内容输出,他们有何区别呢,如果通过节点可以直接用object.属性的方式访问,为什么还需要一个专门的方法来访问节点的属性呢
con[i].getAttribute("title")这个是获取到title属性的值。意思就是如果标签有title属性,且值存在,那就获取到。
con[i].title 这个则是获取到标签的title,如果没有title则创建一个值为空串的title;
<!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"); for (var i=0; i< con.length;i++){ var text=con[i].getAttribute("title"); if(text!=null) { document.write(text+"<br>"); } } document.write("<hr>") ; for (var i=0;i<con.length;i++){ var text=con[i].title; if(text!=null){ document.write(text+"<br>"); } } </script> </body> </html>
没有大的区别,只是有些方法封装好了,但是getAttribute()适用范围更广一点,可以获取自定义属性,你可以看看那《DOM启蒙》里面讲的比较详细
先记着,都有用。
到后面你就知道了
JavaScript进阶篇
468061 学习 · 21891 问题
相似问题