为什么用document.body直接选取body,浏览器报错body未定义?

为什么用document.body直接选取body,浏览器报错body未定义?

老师你好,我为什么不能直接用document.body选取body元素?要在先前面定义var body=document.body;再引用body,浏览器才不报错?

<!DOCTYPE html>

<html>

<head>

  <meta charset="UTF-8">

  <title>Document</title>

  <style>

    .li{list-style:none;height:50px;line-height:50px;width:100px;background-color:lightblue;text-align:center;}

  </style>

  <script>

      //在此处补充代码

      window.onload=function(){

      var ul=document.createElement("ul");

      var comment=document.createComment("创建节点");

      var fragment=document.createDocumentFragment();

      body.appendChild(ul);

      for(var i=0;i<3;i++){

          var li=document.createElement("li");

          /*var text=document.createTextNode("第"+(i+1)+"个li");*/

          li.appendChild(document.createTextNode("第"+(i+1)+"个li"));

          li.className="li";

          fragment.appendChild(li);

          ul.appendChild(fragment);

      }

      document.body.insertBefore(comment,ul/*body.firstChild*/);}

    </script>

</head>

<body>

</body>

</html>

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好, 可以直接使用document.body, 你提供的代码,因为直接使用了body,所以报错body未定义。建议修改:

http://img1.sycdn.imooc.com//climg/5df366800953b85206110095.jpg

如果帮助到了你,欢迎采纳,祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师