gpt4 book ai didi

javascript - 浏览器缓存图像防止淡入

转载 作者:行者123 更新时间:2023-11-30 07:39:34 24 4
gpt4 key购买 nike

我有一个页面,我希望我的所有图像在加载后淡入,但单独淡入,我使用以下方法让它工作正常...

<style>
img.imgfade {display:none;}
</style>

<script>
$(document).ready(function() {
$('img.imgfade').load(function() {
$(this).fadeIn('slow');
});
});
</script>

我在这里遇到的问题是,离开页面然后再次返回后,图像不再存在。这可能是因为它们已经存储在浏览器缓存中,因此在我的 javascript 运行之前就已经加载了。

我整个下午都在研究这个,但找不到图像单独加载和淡入淡出的替代方法。我发现的一种方法是在 .load() 中包含一个 .each() 函数。这每个都可以检查图像是否已经完成,如果已经完成,只需手动调用 .load() 但是当我添加它时,图像甚至不会在第一轮加载。

<script>
$(document).ready(function() {
$('img.imgfade').load(function() {
$(this).fadeIn('slow');
});.each(function() {
if(this.complete) {
jQuery(this).load();
}
});
</script>

已解决:问题已在下面解决,因此我将分享我的完整代码以防对其他人有所帮助。这将在加载图像时一次淡入一张图像,并且在您返回页面时也不会受到浏览器缓存图像的影响。

    <style>
img.imgfade {display:none;}
</style>

<script>
(function ($) {
$(document).ready(function() {
$('img.imgfade').load(function() {
$(this).fadeIn('slow');
})
.each(function() {
if(this.complete) {
jQuery(this).load();
}
});
})(jQuery);
</script>

最佳答案

});.each(函数() {

尝试删除分号 ; 否则您的代码将引发语法错误。

请记住还要为您的 each(function()... )

添加一个 });

这样代码就变成了

...
})
.each(function() {
if(this.complete) {
jQuery(this).load();
}
});

关于javascript - 浏览器缓存图像防止淡入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21097616/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com