jquery - Chrome 中大图像的淡入淡出

标签 jquery image google-chrome load fadein

我在大图像中淡入淡出时遇到一些问题,但仅限于 Chrome。

这是绝对基本的设置:

$(document).ready(function(){
   var img = new Image();
   $(img)
      .hide()
      .load(function(){
         $(this).fadeIn(3000)
      })
      .attr("src", "files/originals/01.jpg")
   $("body").append(img)
});

据我所知,这是动态创建图像、加载图像并在加载完成后淡入的传统方法。 现在,这在 FireFox、Safari 甚至 IE 中都可以完美运行,但当我使用大图像(分辨率大于 1900x1200)时,在 Chrome 中就不行了。在有人对尺寸大发雷霆之前,我应该补充一点,这是该项目的要求。 除 Chrome 之外的所有浏览器中都会发生的情况是,图像加载时会出现延迟(预期),并且一旦完成就会淡入。 在 Chrome 中,我在加载图像时得到常规延迟,然后在 fadeIn 持续时间(在我的示例中为 3000 毫秒)内得到另一个延迟,之后图像只是“出现”,就像我使用 show() 一样。 不过,较小的图像在所有浏览器中都能完美运行。

什么给了?我缺少什么?

最佳答案

也许尝试在图像加载后将其插入移动到 DOM 中?像这样:

$(document).ready(function(){
   var img = new Image();
   $(img)
      .hide()
      .load(function(){
         $("body").append(this);
         $(this).fadeIn(3000);
      })
      .attr("src", "files/originals/01.jpg")
});

关于jquery - Chrome 中大图像的淡入淡出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3979552/

相关文章:

javascript - 旋转整个谷歌图表

Javascript/jQuery 在 xml 中搜索字符串然后运行函数

javascript - 使用 jQuery 检查父复选框

c# - 尝试以编程方式将图像添加到资源。设置图片源时出现System.ArgumentException

javascript - jQuery/javascript "rotate"更改事件图像交换效果

javascript - 加载 chrome 扩展并找到当前网站 javascript

javascript - 获取多个类别 onchange 的总计

jquery - 位置固定的 Div,直到特定高度出现故障

javascript - 图片幻灯片不会滑动

javascript - 是否可以将多个 Chrome 扩展打包在一起?