检测元素是否正在转换

时间:2013-01-15 23:29:16

标签: css css3 css-transitions

如何通过js检测现在是否正在对元素应用任何类型的转换?

我的问题简短说明:

我遇到的情况是我在transitionend事件上触发了一个函数,但有时该元素没有应用任何转换(因为在firefox中,例如,用户点击了一些元素快速,这使得过渡变得疯狂并停止工作)所以我想知道什么时候它不起作用,只是自己解雇这个功能,跳过transitionend。我试图避免丑陋的解决方案..

1 个答案:

答案 0 :(得分:0)

W3C Editor's Draft - CSS Transition

指定
  

'transitionend'事件发生在转换完成时。如果在完成之前删除了转换,例如,如果删除了transition-property,则事件将不会触发。

所以,我认为没有一个有效的简单方法来解决这个问题。解决方案留给实现(浏览器),它决定它是否实现转换。

也许,一个解决方案可能是将一个侦听器附加到触发转换的元素,并在一段特定的时间后检查转换的元素是否具有所需的CSS属性集,以及这些属性是否属于没有按预期设置你可以自己运行你的功能。