得,今天又折腾了一天代码,主要是搞那个网页上的JavaScript玩意儿怎么让它跑起来。我也不太懂,就寻思着,这代码写在哪儿不一样跑嘛
最开始的瞎搞
我记得最开始弄的时候,就是想在页面上加个小效果,比如点个按钮弹个窗啥的。我就直接把那几行JavaScript代码,像写普通文字一样,扔到HTML文件里头了。有时候放<head>
里,有时候放<body>
里,当时感觉都行。
结果?有时候行,有时候就不行。特别是代码一多,或者需要操作页面上还没加载出来的东西时,就报错。而且整个HTML文件看起来乱七八糟的,代码和标签混在一起,回头找都费劲。
学聪明了点:用<script>
标签包起来
后来查了查,也看了别人怎么写的,发现得用个叫<script>
的标签把JavaScript代码包起来。,原来是这样。我就试了试。
确实规矩多了。我就把所有要写的JavaScript都塞到一个<script> ... </script>
块里面。这下代码是集中了点,不像之前那样散落在各处了。通常我就把它放在<head>
标签里面,或者放在<body>
标签结束之前。
放在<head>
里,有时候页面还没画出来,它就开始跑了,想操作页面上的元素就找不到,又报错。放在<body>
面就好很多,起码页面上的东西大部分都出来了,代码跑起来能找到它们。
但问题是,如果好几个页面都要用同一段JavaScript代码,我就得每个HTML文件里都复制粘贴一遍。这维护起来也太麻烦了,改一个地方,得所有文件都跟着改,累死个人。
最终的搞法:单独放个文件
搞来搞去,我发现最省事,也最清楚明白的办法,还是把所有的JavaScript代码抽出来,单独放到一个文件里。这文件后缀名一般就是.js
,比如我弄了个这样的文件。
然后,在我的HTML文件里,就在我原来放<script>
代码块的地方,改成这样一句话:
<script src="*"></script>
这句话的意思,我理解就是告诉浏览器:“喂,你要用的JavaScript代码,不在我这HTML文件里了,你去那个叫的文件里找!”
这样一来,好处多多:
- HTML文件干净多了,只负责结构和内容,代码的事交给
.js
文件。 - 同一个
.js
文件,可以被好几个HTML页面引用。要改代码,只需要改这一个.js
文件就行了,所有用了它的页面就都更新了,省事! - 浏览器加载网页的时候,这个
.js
文件还能被缓存。就是说,用户第一次访问下载了,下次再来,可能就直接用本地存着的,网页打开速度都能快点。
至于这个<script src="..."></script>
标签放哪儿?我现在的习惯还是放在<body>
标签结束之前。这样能保证页面上的元素都先加载JavaScript再去操作它们,稳妥。
总结一下
我现在弄JavaScript,基本上就是这么个流程:
- 新建一个
.js
文件,把所有JavaScript代码都写进去。 - 在HTML文件的
<body>
标签快结束的地方,用<script src="你的js文件名.js"></script>
把它引进来。
就这么简单两步,代码调用起来就顺畅多了,管理也方便。虽然一开始也走了不少弯路,但实践下来,觉得还是这种方式最实在。今天就记录到这儿,希望能帮到也在琢磨这事儿的朋友。