在 Linux 下的 Firefox 15.0.1 中未触发 transitionend 事件
Posted
技术标签:
【中文标题】在 Linux 下的 Firefox 15.0.1 中未触发 transitionend 事件【英文标题】:transitionend event not fired in Firefox 15.0.1 under Linux 【发布时间】:2012-09-13 10:36:10 【问题描述】:这可以在这里测试:http://jsfiddle.net/rGECn/2/
是否有解决此问题的方法?
更新 1:
transitionend
在窗口中返回 false。
【问题讨论】:
在 Firefox 15.0.1 for Ubuntu 12.04 64 位下可以正常工作。 如果您添加-moz
可能吗? jsfiddle.net/rGECn/43
不带供应商前缀的 transition: all 1s;
也适用于 Windows 7 64 位的 FF18 Nightly。
@Ken:我在 Ubunutu 12.0.4 64 位/Unity 下使用 FF 15.0.1,它不适合我。
更新了我上面的评论,-moz
版本的小提琴可以在 Linux 上运行吗?
【参考方案1】:
您在 CSS 中缺少一些供应商前缀。
button
width: 100px;
-moz-transition: all 1s;
-o-transition: all 1s;
-webkit-transition: all 1s;
transition: all 1s;
根据compat table,transition
s 仅在 IE10 中受支持,所以我建议使用 jQuery 的 animate
方法作为跨浏览器解决方案:
$('button').click(function()
var toggle = [100, 150],
$this = $(this),
c = $this.data('count') + 1;
$this.data('count', c);
$this.stop(true).animate('width': toggle[c % toggle.length], 1000, function()
//done callback
count();
);
).data('count', 0);
Fiddle
如果您想将动画排队而不是在用户点击动画时破坏它们,请删除 .stop(true)
。
【讨论】:
Fabicio,看起来问题出在我正在使用的错误库上:paulrhayes.com/2011-11/…。我必须进一步调查。无论如何感谢您的帮助。以上是关于在 Linux 下的 Firefox 15.0.1 中未触发 transitionend 事件的主要内容,如果未能解决你的问题,请参考以下文章