script放置最佳位置以及html执⾏顺序
看到知乎上有很多讨论关于javascript位置的⽂章。所以特意留意了这⽅⾯的问题。
⾸先要了解到的是:
html⽂件是⾃上⽽下的执⾏⽅式,但引⼊的css和javascript的顺序有所不同,css引⼊执⾏加载时,程序仍然往下执⾏,⽽执⾏到<script>脚本是则中断线程,待该script脚本执⾏结束之后程序才继续往下执⾏。
所以,⼤部分⽹上讨论是将script脚本放在<body>之后,那样dom的⽣成就不会因为长时间执⾏script脚本⽽延迟阻塞,加快了页⾯的加载速度。
但⼜不能将所有的script放在body之后,因为有⼀些页⾯的效果的实现,是需要预先动态的加载⼀些js脚本。所以这些脚本应该放在<body>之前。
其次,不能将需要访问dom元素的js放在body之前,因为此时还没有开始⽣成dom,所以在body之前的访问dom元素的js会出错,或者⽆效
直接上代码
1</head>
script在html中的用法2<script type="text/javascript">
3 ElementById("text").innerHTML="hello world";
4</script>
5<body>
6<h1 id="text"></h1>
7</body>
8</html>
此时结果空⽩⼀⽚。
将script脚本放在body之后
<body>
<h1 id="text"></h1>
</body>
<script type="text/javascript">
</script>
有了结果
所以,我认为script放置位置的原则“页⾯效果实现类的js应该放在body之前,动作,交互,事件驱动,需要访问dom属性的js都可以放在body之后”。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论