flexslider中的GIF滑块,如何仅在滑块上开始GIF
GIF slider in flexslider, how to begin the gif only when on slider
现在我有一个有四个幻灯片的flexslider。第三个滑块是gif格式,而不是其他的jpg格式。我遇到的问题是,这第三个gif滑块显然是立即开始当页面到达,而不是当你真正得到那个滑块。当你点击前两个滑块时,这个gif就差不多完成了。
有谁知道我该如何开始一个GIF只有当一个达到滑块?
经过一个小时的测试,我终于为您找到了解决方案,将before
函数添加到您的声明代码中,并将下一个img
的src
更改为空并返回到原始src
做工作,如下:
JS:
此代码将在显示之前初始化GIF。
$('.flexslider').flexslider({
animation: "slide",
before: function(slider){
var src = $(slider).find('.flex-active-slide').next().find('img').attr('src');
$(slider).find('.flex-active-slide').next().find('img').attr('src','').attr('src',src);
}
});
这对我来说很合适。
参见JS Fiddle(你可以注意到gif中的计数器总是以10开始,没有before
函数你会发现计数器已经开始),希望有所帮助。
据我所知,使用代码来暂停/停止/播放GIF动画是不可能的。
我知道的变通方法是…
-
一些浏览器在元素在屏幕上实际可见之前不会启动GIF动画,所以你可以隐藏图像,直到幻灯片激活,然后
$('#MyGifImage').show()
。但是,您需要测试它在不同浏览器中的表现。 -
正如这个问题所建议的,你可以创建图像精灵而不是动画GIF。
你试过这两种方法吗?
相关文章:
- 如何添加类,同时开始在文本字段中输入文本
- 先预加载动画gif
- 希望日期开始结束于while循环中的一个房间id的一个数组
- ng模型内的ng重复的ng重复开始
- 在HTML/JavaScript中,有没有一种方法可以在图像开始加载时知道图像的最终布局尺寸
- 将gif图像添加到chart.js V2.0中
- Yii2从点击链接开始加载模式
- Jquery幻灯片以一行左侧的图像开始,但我希望它从右端开始
- 从REST服务器和Coffeescapet前端开始
- nodejs createReadStream从第n行开始
- 处理第三方库发送的ajax请求的开始和结束事件
- 从头开始创建XLS文件
- 在开始时隐藏FX.slide内容,而不是在单击后隐藏
- 拖动开始时更改可拖动元素的大小
- 是否可以在页面开始加载之前显示加载gif/image
- 从头开始动画gif
- 如何使GIF总是从头开始在jQuery移动
- flexslider中的GIF滑块,如何仅在滑块上开始GIF
- 单击鼠标启动动画gif,从第一帧开始
- Ajax加载器(.gif)文件一直在页面的开始处剪切