我有一个只播放一次(不循环)的动画GIF。我希望它在被点击时能够播放动画。 我尝试了以下代码:
$('#plus').click(function(){
$('#plus').attr('src','');
$('#plus').attr('src','img/plus.gif')
});
希望通过快速重置
src
来触发动画,但没有成功。有人知道怎么做吗?我有一个只播放一次(不循环)的动画GIF。我希望它在被点击时能够播放动画。 我尝试了以下代码:
$('#plus').click(function(){
$('#plus').attr('src','');
$('#plus').attr('src','img/plus.gif')
});
src
来触发动画,但没有成功。有人知道怎么做吗?<script language="javascript" type="text/javascript">
function randomString() {
var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
var string_length = 8;
var randomstring = '';
for (var i=0; i<string_length; i++) {
var rnum = Math.floor(Math.random() * chars.length);
randomstring += chars.substring(rnum,rnum+1);
}
document.randform.randomfield.value = randomstring;
}
$('#plus').click(function(){
$('#plus').attr('src','img/plus.gif?x=' + randomString())
});
</script>
$('#plus').attr('src','img/plus.gif?x='+Math.round(Math.random()*1000));
- Isaac Lubowfunction refreshSrc(who){
return who.src= who.src.split('?')[0]+'?='+(+new Date());
}
refreshSrc(document.images[0])
如果您愿意,可以使用jQuery语法来装扮它。
这是一种有些不同寻常的方法。
您可以将单独的帧导出为它们自己的图像,并通过javascript处理动画。
它让您做一些很酷的事情。最近,我的一个同事有一个小计时器动画,它与我们的图像库中可配置的幻灯片间隔同步。
另外一个好处是您可以使用png并具有半透明背景。
可能有一个适用于javascript的精灵动画库 :)
对于那些想要在滚动到视图时执行此操作的人,我做了以下操作。
appear.js 的链接:https://github.com/morr/jquery.appear
$('img.large-magnify-glass-animation').appear(function() {
$(this).delay(200, function(){
$(this).attr('src','http://example.com/path/to/gif.gif');
});
});
我刚刚使用appear插件,在短暂的延迟后,通过attr('src')加载了相同的gif。没有时间戳或随机字符函数。