JavaScript文档加载完成后再去执行代码

快乐打工仔 分类:实例代码

JavaScript文档加载完成后再去执行代码属于前端实例代码,有关更多实例代码大家可以查看

在执行某些操作的时候,需要当文档完全加载完成之后再去执行,否则可能出现意向不到的情况。

首先看一段代码实例:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.pipipi.net/" />
<title>犀牛前端部落</title>
<style type="text/css"> 
div{ 
  width:200px; 
  height:200px; 
} 
</style> 
<script type="text/javascript"> 
document.getElementById("mytest").style.backgroundColor="#639"; 
</script> 
</head> 
<body> 
<div id="mytest"></div> 
</body> 
</html>

以上代码的初衷是将div的背景颜色设置为#639,但是并未达到我们预期的效果,这是因为文档加载的时候代码是顺序执行的,当执行js的设置背景颜色代码的时候,还没有加载到指定的div,所以js语句根本没有获取到对象。代码修改如下:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.pipipi.net/" />
<title>犀牛前端部落</title>
<style type="text/css"> 
div{ 
  width:200px; 
  height:200px; 
} 
</style> 
<script type="text/javascript"> 
window.onload=function(){ 
  document.getElementById("mytest").style.backgroundColor="#639"; 
} 
</script> 
</head> 
<body> 
<div id="mytest"></div> 
</body> 
</html>

以上代码实现了预期的效果,这是因为将代码放到了一个函数中,而此函数用作了window.onload事件的事件处理函数。window.onload事件触发的条件是当前文档完全加载完成,当此事件被触发之后,就会执行它的事件处理函数,这样因为所有文档都已加载了,就不存在js语句无法获得对象的情况了。

JavaScript文档加载完成后再去执行代码,这样的场景在实际项目中还是用的比较多的,关于JavaScript文档加载完成后再去执行代码就介绍到这了。

回复

我来回复
  • 暂无回复内容