当前位置:主页 > 聚焦 >

JavaScript中onload和load的区别是什么?

时间:2020-12-14 19:37:39

  区别:load只是表明事件方法,但并未执行;onload表示加载完页面所有东西以后才执行,在页面只允许出现一个onload函数,因为它可编函数个数只有一个。onload可能会有元素没有加载完就执行,load等所有的元素加载完后才执行。

  相关:《jQuery视频教程》

  在写交互的时候,加载函数使onload还是load呢?

  趁机整理以防遗忘!!

  js中window.onload(function)等价于jquery中$(window).onload(function)

  一:window.load这个只是表明事件方法,但并未执行,比如hover、click表示事件,必须用上hover、onclick他才会执行

  在页面加载渲染的时候通常会有一个Loading效果,这时就可以用它了:

  JS:

   $(window).load(function(){ $(".loadingicon").addClass("loader-chanage"); $(".loadingicon").fadeOut(300,function(){ $(".loadingicon").remove(); $(".maker").show().animate({"right":"0"},500); }); })

  $(window).load(function)页面当中的图片和其他资源加载完成之后才会执行;
 

  二:window.onload 这个表示加载完页面所有东西以后才执行,在页面只允许出现一个onload函数,因为它可编函数个数只有一个:

  JS:

  <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>demo float</title> </head> <body> <script type="text/javascript"> window.onload = function(){ alert("这是1");}; window.onload = function(){ alert("这是2");}; </script> </body> </html>

  运行结果:

  三:说完以上还有一个Jquery的$(document).ready(function),网页中的所有DOM结构绘制完毕后就执行,可能DOM元素关联的内容没有加载完,例如图片以及设置的相关高度宽度等,这时可以考虑jquery中的load方法规避;另外$(document).ready(function)可编写函数不限,如:

  <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>demo float</title> <script type="text/javascript" src="这是1");}); $(document).ready(function(){ console.log("这是2");}); </script> </body> </html>

  运行结果:

  
 

  四、document

  document.write(_LoadingHtml); //监听加载状态改变 document.onreadystatechange = completeLoading; //加载状态为complete时移除loading效果 function completeLoading() { if (document.readyState == "complete") { var loadingMask = document.getElementById('loadingp'); loadingMask.parentNode.removeChild(loadingMask); } }

  最后总结一下:

  js:window.onload页面一运行就执行该函数,执行该函数时,可能页面中的图片还没有加载完成!

  jquery: $(window).load()页面中的图片或其它东西加载完成之后,执行该函数。

  调用load方法的完整格式是:load( url, [data], [callback] )参数分别url地址、文件类型(php、html等)、回调函数,也支持选择器加载load("test.html #内容id名")

  编程教学!!

热点推荐
1 韩国国税厅提议修订《刑事诉讼法》强化

韩国国税厅官员提议修订《刑事诉讼法》,以强化对个人自持虚拟资产的扣押执行规则。今年...

2 韩国股市与纳斯达克100指数相关系数升至

消息,据彭博社披露,韩国综合股价指数与纳斯达克100指数的60日相关系数升至0.46,接近过去...

3 Polymarket:美联储7月29日维持利率不变概率

消息,Polymarket交易者目前预计美联储在7月29日的决策中维持利率不变的概率为93.5%。...

4 长鑫存储巨鲸挂出832万美元卖单,挂单规

消息,长鑫存储巨鲸在HyperLiquid上挂出832万美元的卖单,挂单规模已超过CXMT单日成交额。当前...

5 BTC ETF两周吸引2.73亿美元资金

消息,BTC交易所交易基金在两周内吸引了2.73亿美元的资金流入,尽管这一数字与此前八周流出...

6 Schwab新兴市场ETF与iShares全球ETF:哪个更适

消息,Schwab新兴市场ETF与iShares全球ETF之间的对比引发了投资者的关注。Schwab ETF主要针对新兴经...

7 沉睡鲸鱼在5年后转移700枚BTC,当前价值约

一只沉睡的鲸鱼在5年后转移了700枚比特币,最初购买时花费约2234万美元,目前价值约4530万美...

8 Zhu Su:石油或许是AI的最佳类比,最终将

消息,三箭资本联合创始人Zhu Su表示,石油或许是AI的最佳类比,两者都存在多种形态并最终走...

9 币安将于7月21日停止支持MOVR和GLMR主网充

消息,币安官方公告称,将于2026年7月21日19:00停止支持moonriver 和moonbeam 主网的充值和提现业务...

10 摩根士丹利:欧洲柴油供应紧缩压力或将

消息,摩根士丹利指出,由于一系列重大供应挑战同时出现,欧洲正面临柴油供应紧缩局面,...

成都来彰科技 蜀ICP备2025134723号-1

资讯来源互联网,如有版权问题请联系管理员删除。