问答详情
源自:9-6 setAttribute()方法

Lists[1]和Lists[2]之间显示为什么用一个空行?

Lists[1]和Lists[2]之间显示为什么用一个空行?

提问者:总角晏晏 2015-06-11 16:55

个回答

  • 心宿二
    2015-11-17 18:03:12

    <script type="text/javascript">
      var Lists=document.getElementsByTagName("li");
      for (var i=0; i<Lists.length;i++)
      {
        document.write(text +"<br>");
        if(text=="")
        {
        Lists[i].setAttribute('title',Lists[i].innerText);
        document.write(Lists[i].getAttribute("title")+"<br>");
        }
      }
    </script>

    因为if判断之前就打印了一遍document.write(text +"<br>");会把空的title也 打印出来。if判断之后又打印了一遍document.write(Lists[i].getAttribute("title")+"<br>");所以title为空的被打印了两遍,第一遍没值,显示为空行,第二遍有你所赋给的值。

    <script type="text/javascript">
      var Lists=document.getElementsByTagName("li");
      for (var i=0; i<Lists.length;i++)
      {
        var text = Lists[i].getAttribute('title');
        if(text=="")
        {
        Lists[i].setAttribute('title',Lists[i].innerText);
        document.write(Lists[i].getAttribute("title")+"<br>");
        }else{
            document.write(text +"<br>");
        }
      }
    </script>


  • hey自然
    2015-08-20 16:34:38

    因为在这里setAttribute是新建了一个属性值是“WEB前端技术”的title属性。

  • 思迥异做不同
    2015-07-03 15:29:24

    把 == "" 换成 == null

  • 伊兮尘昔
    2015-06-11 18:05:40

    不是有个<br>标签吗