【发布时间】:2011-03-12 15:20:10
【问题描述】:
我正在使用动画 GIF 创建动画幻灯片。我正在从一个动画交叉淡入淡出到下一个动画。问题是:我发现确保 GIF 从第一帧开始动画的唯一方法是在每次显示时重新加载它。每个 GIF 大约 200KB,这对于连续幻灯片放映来说带宽太大了。
这是我当前的代码。 img 和 nextimg 是 <div> 标签,每个标签包含一个 <img>。 nextimg_img 是<img> 标签对应下一张要显示的图片。
var tmp = nextimg_img.attr('src');
nextimg_img.attr('src', '');
setTimeout(function() { nextimg_img.attr('src', tmp); }, 0);
img.fadeOut('slow');
nextimg.fadeIn('slow');
想法是将下一张图片的src属性设置为'',然后将其设置回要显示的GIF的来源。
这可行 - 它从头开始重新启动动画 - 但 GIF 似乎每次显示时都会重新下载。
编辑:这是一个循环幻灯片,我试图避免在第二次/第三次/后续时间显示时从网络重新加载 GIF。
【问题讨论】:
-
这不是我在这个问题中要问的。我在问如何在显示 GIF 动画时从头开始。
标签: javascript jquery gif animated-gif