JavaScript加载顺序报错
来源:互联网 发布:大连理工大学网络期刊 编辑:程序博客网 时间:2024/06/05 08:10
JavaScript如果放在HTML主体之前,由于被操作的元素未被加载报错:
1.script中忽略函数的影响,仅对标签及元素的获取和操作:报错;
注:获取得到null,不报错,操作则在console日志报错。
<!doctype html><html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <style type="text/css"> .c1{color:red } </style><script><!-- var element=document.getElementById("demo"); console.log("元素"+element); element.style.background="yellow";</script><p id="demo"> <font size="4">报错 </font></p><button type="button" onclick="myFunction()">变色</button></body></html>
如图:
2.script中仅有函数,排除其他因素影响:
a)当函数在行间事件触发调用时:函数正常运行且改变样式;
<!doctype html><html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <style type="text/css"> .c1{color:red } </style><script><!-- function myFunction(){ var element=document.getElementById("demo"); console.log("函数中获得元素值:"+element); element.className="c1"; } //--> </script><p id="demo"> <font size="4">正常运行</font></p><button type="button" onclick=" myFunction()">变色</button></body></html>
b)函数在script全局中调用时:报错;
【注意不要自调,形成死循环】
点击按钮后函数可正常调用且改变样式。
<!doctype html><html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <style type="text/css"> .c1{color:red } </style><script> function myFunction(){ var element=document.getElementById("demo"); console.log("函数中获得元素值:"+element); element.className="c1"; } myFunction();</script><p id="demo"> <font size="4">在script中猴急调用报错/点击按钮后函数则正常运行</font></p><button type="button" onclick="myFunction()">变色</button></body></html>
小结:script代码在主体之前,如果函数是行间事件调用则不影响;如果在script全局中或者函数中开始操作标签或元素样式则报错。
解决方案:
①让HTML加载后再加载script;
window.onload(){
}
②script代码写在HTML代码的底部。
0 0
- JavaScript加载顺序报错
- JavaScript加载顺序问题
- 网页加载 html javascript 顺序
- 浏览器加载javascript顺序笔记
- JavaScript的加载执行顺序
- javascript页面加载顺序以及延迟加载
- JavaScript 加载顺序和异步加载详解
- 前端性能优化:javascript的加载顺序
- javascript变量和函数的加载顺序
- JavaScript文档加载顺序和事件绑定
- javascript 控制优化页面 js 加载顺序
- javascript在html中的加载顺序
- javascript在页面中的加载顺序
- Javascript 在html 中的加载顺序
- 懒加载报错
- java中导包顺序报错
- 并行加载与顺序执行–《高性能javascript》读书笔记(jquery加载顺序)
- javascript 报错
- Map嵌套Map遍历
- 欢迎使用CSDN-markdown编辑器
- Applet输入输出
- Drainage Ditches POJ
- 记《黑客与画家》
- JavaScript加载顺序报错
- SVN 搭建及使用
- PIGS POJ
- CF-Tinkoff Challenge-Elimination Round-D-Presents in Bankopolis
- Optimal Milking POJ
- 无法打开包括文件: corecrt.h: No such file or directory
- linux sed命令详解
- idea常用快捷键
- 如何通俗易懂地解释「协方差」与「相关系数」的概念?