📅  最后修改于: 2023-12-03 15:25:52.178000             🧑  作者: Mango
在编写 JavaScript 应用程序时,有时需要等待页面完全加载和准备就绪,然后才能执行某些操作。在 jQuery 中,有几种方法可以等待页面准备就绪。其中最常见的是使用 jQuery.ready() 方法。
jQuery.ready()
方法是指当文档树准备好用 JavaScript 代码处理时运行的函数。它等同于 JavaScript 的 window.onload
事件。该方法接受一个函数参数,这个函数会在文档准备就绪时被触发。
$(document).ready(function() {
// 代码在文档准备就绪时执行
});
或者使用更短的写法:
$(function() {
// 代码在文档准备就绪时执行
});
但是,有时候你需要完全掌控页面的加载过程。在这种情况下,你可以使用 jQuery 的 Deferred
对象。前提是必须创建Deferred
对象,然后等待页面准确无误的加载完毕,然后去执行某个回调函数。
//创建Deferred对象
var deferred = $.Deferred();
// 等待页面准备就绪,在回调函数中执行代码
$(document).ready(function() {
deferred.resolve();
});
// 使用then()方法在deferred对象被resolve时执行代码
deferred.then(function() {
// 代码在页面准备就绪时执行
});
另外,如果需要暂停页面的加载过程,可以使用 $.holdReady()
方法。可以使用该方法来等待外部资源的加载。当你准备好继续页面的加载过程时,可以调用 $.holdReady(false)
。
$.holdReady(true);
// 在这里进行外部资源的加载操作
$.holdReady(false);
拒绝就绪 jQuery 是一种控制页面加载过程的方法,可以在页面元素完全加载和准备就绪后执行 JavaScript 代码。jQuery.ready()
方法是最常见的方法,可以让你指定一个回调函数,在文档准备好处理 JavaScript 代码时执行。使用 Deferred
对象和 $.holdReady()
可以更精细地控制页面的加载过程。