空城盼故人
2016-05-26 21:11
var con=document.getElementsByTagName("li"); for (var i=0; i< con.length;i++){ //var text=con[i].getAttribute("title"); var text=con[i].title; if(text!=null) { document.write(text+"<br>"); } }
//var text=con[i].getAttribute("title"); var text=con[i].title; //通过这两种方法获得的结果怎么不一样???这两个方法的区别是什么??
var text=con[i].getAttribute("title");
这个是获取到title属性的值。
意思就是如果标签有title属性,且值存在,那就获取到。
var text=con[i].title;
这个则是获取到标签的title,如果没有title则创建一个值为空串的title;
title=""
注意一下:空值!=空串
null!=""
比较的例子如下:
<script type="text/javascript"> { document.write("不等于"+"<br>"); } </script>
哥们,抱歉啊,我的理解好像有点出错。这理解好像不太对
attribute获取到的属性值是节点有的属性,这里获取到的是li节点的title属性的值,不管li你有没有给它一个title,title都是存在的,只是没赋值的就是null,就和这里的第二个li一样,虽然没有title,但是title还是存在的。但是如果你直接用con[i].title的话,只是得到的是已经赋值的title,未赋值的就是不存在的。
con[i].title只能获取HTML元素现有属性,前者可以获取非HTML元素属性
JavaScript进阶篇
468060 学习 · 21891 问题
相似问题