为了账号安全,请及时绑定邮箱和手机立即绑定

window.onload vs $(document).ready()

window.onload vs $(document).ready()

慕妹3242003 2019-05-25 16:48:46
window.onload vs $(document).ready()JavaScript window.onload和jQuery的$(document).ready()方法有什么区别?
查看完整描述

4 回答

?
慕村9548890

TA贡献1884条经验 获得超4个赞

readyHTML文档加载后发生的事件,而该onload事件时,所有内容(例如图像)也已经被加载后发生。

onload事件是DOM中的标准事件,而ready事件特定于jQuery。ready事件的目的是它应该在文档加载后尽早发生,以便为页面中的元素添加功能的代码不必等待加载所有内容。


查看完整回答
反对 回复 2019-05-25
?
叮当猫咪

TA贡献1776条经验 获得超12个赞

window.onload是内置的JavaScript事件,但由于它的实现在浏览器(Firefox,Internet Explorer 6,Internet Explorer 8和Opera)中有微妙的怪癖,jQuery提供了抽象的东西,并在页面的DOM准备好后立即触发(不等待图像等)。document.ready

$(document).ready(请注意,它不是 document.ready,未定义)是一个jQuery函数,包装并提供以下事件的一致性

  • document.ondomcontentreadydocument.ondomcontentloaded- 加载文档的DOM时可能会触发的新事件(可能是加载图像等之前的某个时间); 再次,在Internet Explorer和世界其他地方略有不同

  • window.onload(甚至在旧浏览器中实现),在整个页面加载时触发(图像,样式等)


查看完整回答
反对 回复 2019-05-25
?
LEATH

TA贡献1936条经验 获得超6个赞

$(document).ready()是一个jQuery事件。$(document).ready()一旦DOM准备好就会调用JQuery的方法(这意味着浏览器已经解析了HTML并构建了DOM树)。这使您可以在文档准备好被操作后立即运行代码。

例如,如果浏览器支持DOMContentLoaded事件(就像许多非IE浏览器那样),那么它将触发该事件。(请注意,DOMContentLoaded事件仅在IE9 +中添加到IE中。)

可以使用两种语法:

$( document ).ready(function() {
   console.log( "ready!" );});

或速记版本:

$(function() {
   console.log( "ready!" );});

要点$(document).ready()

  • 它不会等待加载图像。

  • 用于在DOM完全加载时执行JavaScript。把事件处理程序放在这里。

  • 可以多次使用。

  • 更换$jQuery,当你收到“$没有定义”。

  • 如果您想操纵图像,则不使用。请$(window).load()改用。

window.onload()是一个本机JavaScript函数。该window.onload()事件触发时,所有的页面上的内容已加载,包括DOM(文档对象模型),横幅广告和图像。两者之间的另一个区别是,虽然我们可以有多个$(document).ready()函数,但我们只能有一个onload函数。


查看完整回答
反对 回复 2019-05-25
  • 4 回答
  • 0 关注
  • 510 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信