为什么红框处会有空一行,是什么原因导致的哪行代码导致的

来源:9-6 setAttribute()方法

手可摘星_陈

2020-11-09 21:28

不懂为什么会有红框处空一行,是哪段代码导致的?

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

http://img1.sycdn.imooc.com/5fa943a700019f1504580606.jpg

写回答 关注

1回答

  • 星鸣一曲
    2020-11-11 11:27:04
    已采纳

    因为之前有空("")的title属性也被if上面的document.write先输出了一遍,然后在if语句里,值被更改又输出了一遍。想要解决这个问题就在if后面加个else,然后将document.write(text +"<br>")写进else里就能解决这个问题。就像这样:

    <script type="text/javascript">

      var Lists=document.getElementsByTagName("li");

      for (var i=0; i<Lists.length;i++)

      {

        text=Lists[i].getAttribute("title");

        if(text=="")

        {

        Lists[i].setAttribute("title","flash"+i);

        document.write(Lists[i].getAttribute("title")+"<br>");

        }else{

            document.write(text +"<br>");

        }

      }

    </script>


JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468060 学习 · 21891 问题

查看课程

相似问题