我近期原创帖之1(看谁理解更深刻,关于defer,attachEvent,window.onload....)

本博客停止更新,新家地址 http://ashun.cnblogs.com/

1.[共同学习]贴段代码,大家来写执行结果,看谁理解更深刻,关于defer,attachEvent,window.onload....

这个帖子总结了大部分常用的在页面加载完毕之后再执行script的代码的几种常用方法。

最后总结了window.attachEvent, <script defer>等方式加载函数的一些细节

帖子原文http://community.csdn.net/Expert/topic/4697/4697838.xml?temp=.1720087

  window.attachEvent("onload",function(){alert('attach1')})
function window.onload(){alert('window.onload')}

function window::onload(){alert('window.onload')}
<script defer> alert('defer1')</script>
<SCRIPT event=onload for=window language=JavaScript>
alert('eventfor...')
</SCRIPT>

<body  οnlοad="javascript:alert('body οnlοad=...')">


尤其值得注意的是:

1.window.attachEvent是随机运行的

<script>
  window.attachEvent("onload",function(){alert('1')})
  window.attachEvent("onload",function(){alert('2')})
  window.attachEvent("onload",function(){alert('3')})
  window.attachEvent("onload",function(){alert('4')})
  window.attachEvent("onload",function(){alert('5')})
  //结果肯定不是1,2,3,4,5 也不是5,4,3,2,1
</script>

2.defer 按照后后进先出的次序执行
<script defer>...</script>


原文内容:

<html>
<script>
  window.attachEvent("onload",function(){alert('attach1')})
  window.attachEvent("onload",function(){alert('attach2')})
</script>
<script>function window.onload(){alert('window.onload')}</script>
<script>       alert('normal.1')  </script>
<script defer> alert('defer1')</script>
<script defer> alert('defer2')</script>
<script>       alert('normal.2')  </script>

<SCRIPT event=onload for=window language=JavaScript>
alert('eventfor...')
</SCRIPT>

<body  οnlοad="javascript:alert('body οnlοad=...')">
&nbsp;
</body>
</html>

<script>alert('the last one')</script>


代码已经写得很清晰明了。
一个要求,先自己不要执行,看完代码立刻回贴写下上面代码的执行结果。
回贴后再检验自己的结果是否正确。  如果你写的结果不对,我们再聊聊。

上面代码最多最多可能弹出10个alert对话框。请把他们的弹出顺序依次写出来。

比如:  一定要在你调试之前写出来哦
attach1
attach2
window.onload
normal1
defer1
defer2
normal2
eventfor...
body οnlοad=...
the last one...

如果你觉得某个语句不会弹出来,你就注明:(比如这样.)
defer2,normal2  不会出来

上面的几乎是大部分常用的在页面加载完毕之后再执行script的代码
如果你能一次无调试的情况下写对的话,说明你很不错了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值