【发布时间】:2013-07-27 05:18:57
【问题描述】:
我有一些 div(基本上只是图像)在 360 度旋转时会淡入。一切在所有主流浏览器中都能完美运行,只是 IE 不行。
有效的 CSS3 代码
#box
{
width: 400px;
height: 400px;
display: inline-block;
position: absolute;
transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-o-transform: rotate(0deg);
-ms-transform: rotate(0deg);
transition: all 0.8s 1s ease-in-out;
-webkit-transition: all 0.8s 1s ease-in-out;
-moz-transition: all 0.8s 1s ease-in-out;
-o-transition: all 0.8s 1s ease-in-out;
opacity:0;
}
#box.animate
{
transform: rotate(360deg);
-webkit-transform: rotate(360deg);
-moz-transform: rotate(360deg);
-o-transform: rotate(360deg);
-ms-transform: rotate(360deg);
opacity:100;
}
现在我的 jQuery 代码是
$("#box").addClass("animate");
不幸的是,这就是我对 jQuery 的了解程度。我知道我可以使用fadeIn() 函数来处理不透明度设置,但是有什么可以处理旋转部分?使用任何类型的插件也确实是不得已而为之。我只需要它在 IE9 中工作。如果可以在 Chrome、FF 和 Opera 中运行,那也很棒,但不是必须的。
有没有类似的东西
$("#box").animate(function() {
$(this).fadeIn(1000).rotate(360);
});
我觉得这是一个相当简单的解决方案,我只是想不出该怎么做。另外,我不知道该代码是否有效,我不是 JS 大师。
【问题讨论】:
-
什么在 IE 中不起作用?旋转?褪色?两者都有?
-
IE9 会忽略我在 CSS 中的旋转和不透明度设置。
-
如果下界有效,首先将代码剥离为两者之一(不透明度),然后单独工作。您是否研究过 IE9 是否支持您正在使用的 css? caniuse.com/css-transitions
-
是的,我做过研究。 IE9 不支持我的 CSS,这就是我研究 jQuery 备份计划的原因。
-
当有插件可以为您完成时,自己重写它是一个坏主意。尤其是因为你不想要插件,你基本上是在要求我们为你写一个插件。
标签: javascript jquery