js--HTML/JSP页面JS代码加载顺序
【摘要】
一、说明
JS主要分为内部js和外部js,内部js直接写在页面内,外部js需要引入到当前页面内。 不管是内部js还是外部js,都可以写在<body></body>或<head></head>标签中,写在不同标签中会影响js的加载顺序。
示例
//a.内部js<script ty...
一、说明
JS主要分为内部js和外部js,内部js直接写在页面内,外部js需要引入到当前页面内。
不管是内部js还是外部js,都可以写在<body></body>或<head></head>标签中,写在不同标签中会影响js的加载顺序。
示例
-
//a.内部js
-
<script type="text/javascript">...</script>
-
//b.外部js
-
<script src="${pageContext.request.contextPath}/js/jquery-1.11.3.min.js"></script>
二、加载顺序(具体说明)
<head></head>标签内
html加载时,还不会去加载js的代码。需要触发事件的时候,才去加载js代码。
-
<html>
-
<head>
-
<script type="text/javascript">....</script>
-
</head>
-
<body>
-
...
-
</body>
-
</html>
<body></body>标签内
html一运行,就会去加载js的代码。
-
<html>
-
<head>...</head>
-
<body>
-
<script type="text/javascript">....</script>
-
</body>
-
</html>
PS:
对于引入外部js而言,总是会发生以下类似报错提示
提示a:Uncaught ReferenceError: keyLogin() is not defined
提示2:Uncaught ReferenceError: $ is not defined at loginout.action:16
以上错误提示,集中几种主要原因如下:
1、js函数未定义或定义的函数名跟声明的函数名不一致或传入参数不一致,如上面提示a所示,keyLogin()未定义。
2、js函数写到body、head这两个标签的外面了。(有这样写过的请举手)
3、js函数定义在对象声明之前。js代码直接运行时,代码中操作到的对象写在js代码的后面了。可能会报错,因为不同浏览器可能会根据顺序加载对象。
文章来源: blog.csdn.net,作者:吾日三省贾斯汀,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/JustinQin/article/details/79163560
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)