美文网首页学习前端之厚积薄发
3 document.body为什么是null

3 document.body为什么是null

作者: 小遁哥 | 来源:发表于2019-05-29 23:49 被阅读4次

    大家好,我是小遁。

    document 可以看作整个HTML文档

    <!DOCTYPE html>
    <html lang="zh">
    
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
        <style>
            body {
                margin: 0;
            }
        </style>
    </head>
    <script>
    
    </script>
    
    <body>
    
        <div>
            Hello World
        </div>
    
    
    </body>
    
    </html>
    

    基于上节课代码,使用script标签内嵌脚本

    body元素是undefined

    ctrl+s保存,F5刷新浏览器,F12打开开发者工具

    切换到Console面板

    Console面板

    打印document.body的值为null,null是JavaScript(一门脚本语言)提供的基本类型之一,是一个对象占位符,表示现在还没有值,将来会有。

    因为浏览器解析HTML文档是从上到下的,打印的时候还没有解析到body元素

    可以将script 移到body

    image.png

    保存后刷新

    document.body有值了

    可以尝试用console.dir打印document.body

    切换到Elements面板,浏览器自动将script标签放在body里,为了可读性,不需对程序做修改!

    浏览器做了处理

    彩蛋

    body标签上面访问document.body

    监听window.onDOMContentLoaded事件

    onDOMContentLoaded

    监听window.onload事件

    window.onload

    显然在当前需求中,默默的放在body后面就好。


    扩展

    document还提供了其它属性用于和HTML产生关联
    http://www.w3school.com.cn/jsref/dom_obj_document.asp


    提醒

    练好打字很重要,不能实现盲打还是很伤的,推荐金山打字通这款软件,每天抽出点时间敲敲就好,慢慢就会养成习惯。

    小技巧

    下图是我的任务栏

    image.png

    可以windows+1 、windows+2在浏览器和编辑器之间切换

    进一步

    在编辑器界面时,按下windows+1 切换到浏览器界面,在按windows+1 可以收回浏览器,从而回到编辑器界面

    上一章 - 2 HTML中的body和它的默认样式

    相关文章

      网友评论

        本文标题:3 document.body为什么是null

        本文链接:https://www.haomeiwen.com/subject/klhltctx.html