Jquery 仅限IE10地铁模式下的怪异过渡行为
我编写了以下处理lightbox事件动画的内容:Jquery 仅限IE10地铁模式下的怪异过渡行为,jquery,css,transform,transition,internet-explorer-10,Jquery,Css,Transform,Transition,Internet Explorer 10,我编写了以下处理lightbox事件动画的内容: obj.css({ 'transition':'transform 0.2s linear 0s', 'transform':'perspective(1000px) rotateX(5deg) rotateY(0deg) rotate(10deg) skewX(0deg) skewY(0deg) translate(0px,0px) translateZ(0px)', 'transform-style':'preserve-3d' });
obj.css({
'transition':'transform 0.2s linear 0s',
'transform':'perspective(1000px) rotateX(5deg) rotateY(0deg) rotate(10deg) skewX(0deg) skewY(0deg) translate(0px,0px) translateZ(0px)',
'transform-style':'preserve-3d'
});
为了简单起见,我去掉了变量和供应商前缀。
这段代码在我测试过的所有设备上都能100%工作,并且能够顺利地执行动画
然而,我在IE10中遇到了一个奇怪的问题。仅在Metro模式下(桌面模式IE10工作正常),动画将跳转。。。然后执行动画。。。完成后再跳一次。这种跳跃很微妙,大概有20-30像素的位移。我只是好奇,是否有人经历过IE10在Metro模式和桌面模式之间的任何过渡差异,或者这两种模式之间的任何其他差异,这可能有助于解释这种转变
代码中没有错误,并且控制台是清晰的
谢谢 我看到IE10做了一些奇怪的事情,如果你同时应用一个转换和一个转换,为了调试你可以尝试
obj.css({'transition':'transform 0.2s linear 0s'})
setTimeout(function(){
obj.css({
'transform':'perspective(1000px) rotateX(5deg) rotateY(0deg) rotate(10deg) skewX(0deg) skewY(0deg) translate(0px,0px) translateZ(0px)',
'transform-style':'preserve-3d'
});
}, 10);
如果这不起作用,您可以尝试从默认值开始
obj.css({
'transition':'transform 0.2s linear 0s',
'transform':'perspective(1000px) rotateX(0) rotateY(0) rotate(0) skewX(0deg) skewY(0deg) translate(0px,0px) translateZ(0px)'
})
setTimeout(function(){
obj.css({
'transform':'perspective(1000px) rotateX(5deg) rotateY(0deg) rotate(10deg) skewX(0deg) skewY(0deg) translate(0px,0px) translateZ(0px)',
'transform-style':'preserve-3d'
});
}, 10);
当然,这段代码很可怕,它只是想让您发现问题可能出在哪里。谢谢,我会仔细研究一下。IE10一直工作得很好,但我只是在Metro模式下才注意到这个问题。谢谢你的努力,但我仍然在IE10 Metro模式下遇到这个问题。您上面所写的实际上与我运行代码的方式类似。转换和转换在一起工作得很好——但只有在IE10桌面模式下:p希望会出现一些东西。谢谢你能提供一份工作吗?