猿问

js脚本如果写在body上面,window.onload=function(){....}具体的作用是什么,不知道什么时候该用?

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
    <title></title>
  <script type="text/javascript" language="javascript">

window.onload=function(){
    .......
}
    </script>
</head>
<body>
<a href="http://www.baidu.com" target="_blank" onclick="return aa()">点击</a>
</body>
</html>

慕粉者
浏览 4764回答 7
7回答

乱舞的旋律

就是事件处理程序啊,就是满足某一状态就会自动执行注册上去的函数。window.onload=……就是当加载完成时执行还有很多类似的onclick onmouseover等等

涂大仙

window.onload=function(){}是指当页面全部加载完毕之后,再去执行function(){}大括号中的代码。这样写是因为要保证代码执行的时候,HTML的所有DOM节点已经加载出来了。由于性能或者网络问题,页面的加载不是一瞬间完成的,是有一个时间过程的,比如你想用JS操作一张图片的话,当网页读取到这一段JS代码的时候,图片的DOM节点可能还没有加载出来,浏览器就会报错。为了避免这种情况,所以要在window.onload事件触发之后,再去执行后面的function。上面只是一个比较简单的解释,更详细的你可以查阅一下相关的资料,涉及到了浏览器的渲染机制、DOM的加载顺序等等。

qq_Aries

首先告诉你这是函数作用域的问题   通俗的说你把onclick写在onload外面      当你点击的时候是找不到aa函数的;所以呢  你要把点击事件写在里面  例子看一楼

qq_大寒_2

这问题最好去百度,涉及面很广,你看到window.onload 会牵扯出function addloadevent,body.onload,至于body.onload和window.onload从字面上理解一个是窗口加载,一个是body内部加载。窗口加载肯定包含body加载了,然后还会有js站外引用documentwrite转义的函数代码块也是加载相关问题,js加载问题会有很多,目前也没弄清。

慕粉13052355856

这种写法很少见哎 应该写在head里面的 作用的话就是所有元素加载完成以后执行那个匿名函数。。。最好还是写body.onload吧 window.onloaf的执行顺序有点奇怪
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答