0

この JavaScript を使用して、Web サイトに画像を正常にプリロードしています。

loveHover = new Image();
loveHover.src = "http://mypage.com/images/love-hover.png";

このことを関数にパックする簡単で良い方法はありますか? 何かのようなもの:

function preloadImage(image) {
    var image = new Image();
    var path = "http://mypage.com/images/";
    image.src = path + image;
}
4

3 に答える 3

3
["love-hover.jpg", "like-hover.jpg", "hate-hover.jpg"].forEach(function(img)
{
    new Image().src = "http://mypage.com/" + img;
});

これを 9 より前のバージョンの IE で動作させるには、Array.forEach の互換性セクションで説明を参照してください。

于 2011-03-08T16:30:55.433 に答える
2

関数のユニークな部分は src (画像へのリンク) です。だからそれを議論にしてください。

function preloadImage(src) {
    var image = new Image();
    image.src = src;
}

次に、複数の URL がある場合は、それらを配列に格納します。

var imageSrcs = [
    "http://mypage.com/images/love-hover.png#",
    "http://mypage.com/images/love-hover2.png",
    "http://mypage.com/images/love-hover3.png"
];

そして、ループで画像をプリロードします:

for (var i = 0; i < imageSrcs.lengthl i++)
    preloadImage(imageSrcs[i]);
于 2011-03-08T16:16:34.673 に答える
1

JavaScript をまったく使わないようにしてみましたか?

http://perishablepress.com/press/2008/06/14/a-way-to-preload-images-without-javascript-that-is-so-much-better/

于 2011-03-08T16:12:25.860 に答える