使用 .load() 加载多个项目,只有一个请求,可能是指在使用 jQuery 的 .load() 方法加载多个不同的远程内容到页面元素时,只有一个请求被发送。这可能是因为 .load() 方法是异步执行的,所以在执行多个 .load() 方法时,只有最后一个被执行的请求会被发送。
为了解决这个问题,可以使用 Promise 或 async/await 来确保每个 .load() 方法都有一个单独的请求。以下是一个使用 Promise 的示例:
function loadContent(url, element) {
return new Promise((resolve, reject) => {
$(element).load(url, () => {
resolve();
});
});
}
async function loadAllContent() {
await loadContent('url1', '#element1');
await loadContent('url2', '#element2');
await loadContent('url3', '#element3');
}
loadAllContent();
在这个示例中,我们定义了一个名为 loadContent 的函数,它接受一个 URL 和一个元素作为参数,并返回一个 Promise。在 loadAllContent 函数中,我们使用 async/await 来确保每个 .load() 方法都有一个单独的请求。
总之,使用 Promise 或 async/await 可以确保每个 .load() 方法都有一个单独的请求,从而解决只有一个请求被发送的问题。
领取专属 10元无门槛券
手把手带您无忧上云