我有一个包含7个gif文件的页面。
有没有办法同步它们,所以它们会同时开始播放?
我正在考虑预加载它们,但如果加载时间比另一个加载时仍然可能无法启动同步。
答案 0 :(得分:11)
正如@Archer在上面指出的,一种方法是预先加载它们然后重置src。使用jquery,您可以执行以下操作:
$(window).load(function() {
$('.preload').attr('src', function(i,a){
$(this).attr('src','').removeClass('preload').attr('src',a);
});
});
在jsfiddle上查看。
答案 1 :(得分:1)
考虑用png序列(精灵表)或jpg序列替换你的gif,具体取决于内容的类型。
创建所需动画大小的div,将精灵表设置为隐藏溢出的背景图像。
在javascript中创建一个计时器,可以同时更新所有动画(背景图像位置),每个刻度都允许您非常精确地控制帧速率。
之前我已经使用过这种技术,如果你的精灵表没有太多地影响加载时间,那么效果很好。
答案 2 :(得分:-2)
尝试在页面的顶部预加载它们并在主体加载时运行它们。创建一个函数function gifs{}
,然后运行它:<body onload="gifs()">
。