问答详情
源自:9-5 getAttribute()方法

访问元素节点属性的方式,可以直接用“元素.属性”的方式访问?

//var text=con[i].title;

    var text3=con[i].getAttribute("title");

这两条语句都能实现将title的内容输出,他们有何区别呢,如果通过节点可以直接用object.属性的方式访问,为什么还需要一个专门的方法来访问节点的属性呢

提问者:yu_1010 2019-03-13 18:25

个回答

  • angle_juan
    2019-05-17 16:52:57

    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>

    https://img4.mukewang.com/5cde76650001077d05180436.jpg

  • qq_风流毛哥_03960674
    2019-04-16 21:26:04

    没有大的区别,只是有些方法封装好了,但是getAttribute()适用范围更广一点,可以获取自定义属性,你可以看看那《DOM启蒙》里面讲的比较详细

  • 慕后端7433711
    2019-04-06 18:05:13

    先记着,都有用。

    到后面你就知道了