Html Firefox未引发transitionend的事件
这里的问题是,当我尝试为firefox转换时,并没有发生。Html Firefox未引发transitionend的事件,html,firefox,google-chrome,css,Html,Firefox,Google Chrome,Css,这里的问题是,当我尝试为firefox转换时,并没有发生。 有人能告诉我这里的根本原因或问题是什么。如果转换被中断,transitionend事件及其前缀变体不会触发 根据W3C规范: transitionend事件发生在转换完成时。如果在完成之前删除了转换,例如如果删除了转换属性,则不会触发事件 CSS转换在浏览器级别(请参见:)的工作原理是,如果动画因某些属性更改而中断,则通过反向执行或在某些情况下完全忽略来“重置”。了解这一点可能会有所帮助,因为它可以消除在大多数项目中使用transiti
有人能告诉我这里的根本原因或问题是什么。如果转换被中断,transitionend事件及其前缀变体不会触发 根据W3C规范: transitionend事件发生在转换完成时。如果在完成之前删除了转换,例如如果删除了转换属性,则不会触发事件
CSS转换在浏览器级别(请参见:)的工作原理是,如果动画因某些属性更改而中断,则通过反向执行或在某些情况下完全忽略来“重置”。了解这一点可能会有所帮助,因为它可以消除在大多数项目中使用transitionend的需要
transitionend
事件在Firefox中似乎运行良好。。。看到了吗?你能不能也填一个JSFIDLE来重现这个问题?可能有点晚了,但我面临着同样的问题。上述解决方案有效。但是,您必须注意将.addEventListener调用放在何处;为了确保生成DOM,我在$(document.ready(function(){})中使用了它;(当我使用jQuery时)。@FabrizioCalderan我也有同样的问题。这对我不起作用。参见FF 15.0.1I中的此处,我也有类似问题。但是我注意到@Behrang您的JSFIDLE在firefox转换中使用了错误的前缀。您知道transitionend不应该总是启动吗?见:
document.getElementById("mylogo").addEventListener( 'webkitTransitionEnd', function( event )
{
document.getElementById("mylogotext").className = "mylogoText_visible_style";
});
document.getElementById("mylogo").addEventListener( 'transitionend', function( event )
{
document.getElementById("mylogotext").className = "mylogoText_visible_style";
});
.mylogoText_style
{
position:absolute;
left:-350px;
top:105px;
opacity:0;
z-index:1;
}
.mylogoText_visible_style{
position:absolute;
left:59px;
top:105px;
opacity:1;
z-index:1;
-webkit-transform-style: preserve-3d;
-moz-transform-style: preserve-3d;
-webkit-transition: all 1s ease-in-out 0s;
-moz-transition: all 1s ease-in-out 0s;
}