[英]Execute code after all images are loaded
我想在所有圖像加載后進行一些接口修復(需要保留圖像的元素的高度,並使用它們更改其他元素的高度),我將load事件附加到所有圖像,但是我的加載功能僅執行一次。 我嘗試僅使用jQuery:
$(function() {
var $img = $('img');
var length = $img.length;
var count = 0;
function load() {
console.log(++count + ' == ' + length);
if (count == length) {
// all images loaded
}
}
$img.load(load).error(load);
});
我也嘗試使用onload和onerror事件:
$img.each(function() {
this.onload = load;
this.onerror = load;
});
但是當頁面加載時,我只有一個日志:
1 == 33
(我正在開發工具和禁用緩存的情況下在Xubuntu上的Chromium中進行測試)
我在這里做錯了什么? 加載所有圖像后如何執行代碼?
聽起來您應該處理window
的load
事件:
$( window ).load(function() {
// Glorious code!!
}
從文檔中:“當頁面完全加載包括圖形時運行功能。”
頁面加載完成后執行功能
$(window).load
這樣,所有要素均已准備就緒,可以“衡量”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.