预加载图像的功能?

发布于 2024-10-20 18:33:18 字数 350 浏览 2 评论 0原文

我成功地使用此 JavaScript 在我的网站上预加载了图像:

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;
}

I'm successfully pre-loading an image on my website with this JavaScript:

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

Is there an easy an good way to pack this thing into a function? Something like:

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

梦言归人 2024-10-27 18:33:18
["love-hover.jpg", "like-hover.jpg", "hate-hover.jpg"].forEach(function(img)
{
    new Image().src = "http://mypage.com/" + img;
});

要使其在早于 9 的 IE 版本中工作,请参阅 Array .forEach 兼容性部分 了解说明。

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

To get this to work in IE versions earlier than 9, see the Array.forEach Compatibility section for instructions.

亢潮 2024-10-27 18:33:18

该函数的独特部分是 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]);

Well the unique part of the function would be the src (link to image). So make that the argument.

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

Then if you have multiple urls store them in an array:

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

And preload the images with a loop:

for (var i = 0; i < imageSrcs.lengthl i++)
    preloadImage(imageSrcs[i]);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文