jquery – 停止一个gif动画onload,在mouseover上启动激活

前端之家收集整理的这篇文章主要介绍了jquery – 停止一个gif动画onload,在mouseover上启动激活前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个页面与很多GIF。
<img src="gif/1303552574110.1.gif" alt="" >
<img src="gif/1302919192204.gif" alt="" >
<img src="gif/1303642234740.gif" alt="" >
<img src="gif/1303822879528.gif" alt="" >
<img src="gif/1303825584512.gif" alt="" >

我在找什么

1在网页加载=>所有gif的动画都停止

2在mouSEOver =>动画从那个gif开始

3在mouSEOut =>动画再次停止该gif

我想这可以在Jquery做,但我不知道如何。

解决方法

不,您不能控制图像的动画。

你需要每个图像的两个版本,一个是动画,一个不是。悬停时,您可以轻松地从一个图像更改为另一个图像。

例:

$(function(){
  $('img').each(function(e){
    var src = $(e).attr('src');
    $(e).hover(function(){
      $(this).attr('src',src.replace('.gif','_anim.gif'));
    },function(){
      $(this).attr('src',src);
    });
  });
});

更新:

时间过去,可能性改变。正如kritzikatzi指出的,有两个版本的图像不是唯一的选择,你可以显然使用一个canvas元素来创建动画的第一帧的副本。注意,这并不适用于所有浏览器,IE 8例如不支持canvas元素。

猜你在找的jQuery相关文章