-5

これが私のコードです。Chrome と Firefox では正常に動作しますが、Internet Explorer では動作せず、Mobile Safari でも動作しません。

$(document).ready(function () {
    $('.correct4').load(function () {
        $("#gallery .loader4").css("display", "none");
        $("#gallery .correct4").css("display", "block");
    });
});
4

2 に答える 2

1

非表示の画像がまだ読み込まれていない場合でも、IE が jQuery.load() イベントを発生させることがわかりました。イベントの発生を決定するときに、非表示の画像を完全に無視するようです。.load()

これを回避するにはdiv、画像自体を非表示にするのではなく、非表示のコンテナー内に画像を配置するだけです。次に、含まれているアセットが完全に読み込まれると、.load()イベントが発生し、画像が既に含まれているコンテナーが表示されます。

HTML:

<div id="containerDiv">
    <img src="/image.jpg" alt="" border="0" />
    <img src="/picture.jpg" alt="" border="0" />
</div>

CSS:

#containerDiv {
    display: none;
}

jQuery:

$('img').load(function() {
    $('#containerDiv').css({'display': 'block'});
});
于 2012-09-25T20:17:56.647 に答える
-1

I would stay away from the jQuery load event... You dont really want to load anything into the DOM at this point. You just want to make reference of all the images you want to have in cache. I normally approach it like this. On document ready create an empty array, add a new Image object for each image to the array, then assign the 'src' property to the image, and then every image you created in the array will be in your cache. This will work across all browsers... Its been tested.

$(document).ready(function () {

imagesSearchPage = new Array();

imagesSearchPage ["imageTitle01"] = new Image();
imagesSearchPage ["imageTitle01"].src = "images/imageTitle01.png";
imagesSearchPage ["imageTitle02"] = new Image();
imagesSearchPage ["imageTitle02"].src = "images/imageTitle02.png";
imagesSearchPage ["imageTitle03"] = new Image();
imagesSearchPage ["imageTitle03"].src = "images/imageTitle03.png";
});

I usually create a new array for each page just to keep things organized. I know it might seem like a lot of code but all your images will be cached and you can also reference the image from the array if you need to.

Clear your cache, open up your dev tools, click on Network > Images, and you will see the images.

Hope this helps!

于 2012-09-25T20:37:53.500 に答える