Chrome / Safari图像加载器,第一次打开

Chrome / Safari image loader, first time opening

本文关键字:第一次 加载 Safari 图像 Chrome      更新时间:2023-09-26

构建自己的图像滑块,在firefox中完美工作。然而,在chrome/safari浏览器中,图片往往不会在页面第一次打开时加载。(如果你刷新一切都是好的)

var count = $("#show-image img").size();
var img = $("#show-image img");
$(document).ready(function () {
for(i=0;i<count;i++){
    var width = img[i].width;
    var height = img[i].height;
    $(img[i]).css({"width": width, "height": height});
    console.log(img[i].width);
}
});

在chrome和safari中,第一次加载页面时,一些图像的高度和宽度被设置为0px。我猜是因为这些图片还没有完全加载。

如何可能运行代码,当页面实际上是完全加载的?

作为一个快速和简单的解决方案,使用.load()代替。

一个更好的解决方案是使用这个jQuery插件:
$(document).ready(function() {
    $('#show-image').imagesLoaded(function() {
        /* your code here */
    });
});

优点是你只需要等待那些特定的图像被加载,而不是像.load()那样等待所有