关于window.onload
来源:互联网 发布:江苏省网络作家协会 编辑:程序博客网 时间:2024/06/07 16:16
导语:网页中的JavaScript脚本代码往往需要在文档加载完成后才能够去执行,否则可能会导致无法获取对象的情况,为了避免这种情况的发生,我们有以下两种解决办法:
1.将脚本代码放在网页的最底端,这样就能确保操作的对象已经加载完成。像这样:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body> <div id="parent"> <p id="child">点击此处有彩蛋</p> </div> <script> var child=document.getElementById('child'); alert(child.innerHTML); </script></body></html>
将JavaScript的代码放在所有内容的最后面,或者放在</body>
的外面,或者放在<html>
的外面,都是可以执行到的,因为保证了将上面的所有对象加载完,那么执行JS代码可以获取到啦…
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script> var child=document.getElementById('child'); alert(child.innerHTML); </script></head><body> <div id="parent"> <p id="child">点击此处有彩蛋</p> </div></body></html>
加载整个文档的时候,加载到js脚本代码了,由于后面的内容还没有加载进来,所以获取不到id为child的元素,所以什么都不会执行…
2.通过window.onload来执行脚本代码。window.onload是一个事件,当文档加载完成后会触发该事件,可以为此事件注册事件处理函数,将要执行的脚本代码放在事件处理函数中,于是就可以避免获取不到对象的情况。像这样:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script> window.onload=function () { var child=document.getElementById('child'); alert(child.innerHTML); } </script></head><body> <div id="parent"> <p id="child">点击此处有彩蛋</p> </div></body></html>
以上代码就是为window.onload事件绑定事件处理函数,这里绑定的是一个匿名函数,当然也可以绑定非匿名函数,加上函数名即可。
注意:不能为window.onload事件绑定多个事件处理函数,否则,最后一个会覆盖掉前面所有的函数。如下代码:
window.onload=function a(){}window.onload=function b(){}
可做如下变通:
window.onload=function(){ function a(){} function b(){}}
阅读全文
1 0
- 关于window.onload
- 关于window.onload问题
- 关于window.onload加载的多种解决方案
- 关于window.onload加载的多种解决方案
- 关于window.onload()的加载问题
- 关于window.onload的一点认识
- 关于JS的--window.onload()方法
- window.onload
- window.onload
- window.onload
- window.onload
- window.onload()
- window.onload
- window.onload
- window.onload()
- window.onload
- window.onload
- window.onload
- WEB网站设计用户登录的安全机制
- bind()的用法
- QT5.6移植到ARM 之 移植tslib1.4总结
- 遇到问的机器学习基本问题(1)
- 基于Apache Tomee服务系统的web前端输入中文乱码问题解决办法
- 关于window.onload
- Android webView加载html页面不显示(显示白屏)
- java类集---SortedMap
- MySQL知识点整理
- 最常用的1000个Java类(附代码示例)
- vue 搭建项目环境方法步骤
- 【JSOI】【codevs 2913 建筑抢修】
- Python变量和数据类型
- ionic1.x开发优秀博客的集合(持续更新)