【发布时间】:2017-07-12 08:59:51
【问题描述】:
在我的 wordpress 网站中,我使用了一段非常简单的 jQuery 代码:
jQuery(".first-sq").mouseenter(function(){
jQuery(".first-sq img").attr('srcset', '/wp-content/uploads/2017/01/MachineLearning_hoverx2.png');
})
jQuery(".first-sq").mouseleave(function(){
jQuery(".first-sq img").attr('srcset' , '/wp-content/uploads/2017/01/MachineLearningx2.png');
})
现在代码可以运行,但问题是当mouseenter 调用时,图像需要一些时间才能加载,您可以看到它正在加载。或者换句话说,图像部分显示。有没有办法在加载文档时加载文档可能使用的所有图像,所以在像我的mouseenter 这样的情况下,图像会立即显示而不必加载?
【问题讨论】:
-
预加载图片,查看question 获取有关如何执行此操作的答案
-
您选择的搜索引擎 -> javascript 图片预加载
-
您可以使用 JavaScript 预加载图像,但更好的方法是将两个图像组合成一个图像,设置为
background-image的div并移动位置。关键字:css sprites -
你为什么不使用jQuery onload 函数来加载图像,然后在mouseenter 上将显示样式更改为none / block ?
标签: javascript jquery