javascript-BOM-页面加载事件

DOM文档流一般是从上到下执行,所以我们一般将标签放在最下面,有了元素之后,才能对元素进行操作,放在了元素前的话,js就不会执行额

但是如果想要将放在其他位置,元素上面,也可以执行;- - -可以使用:load事件,或者DOMContentLoaded事件

load事件,DOMContentLoaded事件相同点和不同点:

相同点:
将放在两者中,都可以达到页面加载完成后,再执行js

不同点:
load事件- - -dom页面所有内容加载完后,再执行js语句,包含图片、flash、css等
DOMContentLoaded- - -dom页面加载完毕,不包含图片、flash、css等就可以执行js语句

代码示例:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>页面加载事件</title>
    <script>
        /* window.onload = function() {
                            var btn = document.querySelector('button');
                            btn.addEventListener('click', function() {
                                alert('弹弹弹,弹走鱼尾纹!');
                            })
                        } */
        window.addEventListener('load', function() {
            var btn = document.querySelector('button');
            btn.addEventListener('click', function() {
                alert('弹弹弹,弹走鱼尾纹!');
            })
        })

        window.addEventListener('DOMContentLoaded', function() {
            alert('dom加载完毕,不包含图片 flash css 等就可以执行 加载速度比较快');
        })
    </script>
</head>

<body>
    <button>点我弹弹弹</button>
    <!-- <script>
        var btn = document.querySelector('button');
        btn.addEventListener('click', function() {
            alert('弹弹弹,弹走鱼尾纹!');
        })
    </script> -->
</body>

</html>
上一篇:JVM 学习笔记 - 垃圾回收篇


下一篇:js三大组成部分以及node运行