0
我正在尝试一些网站上的webkit转换,并且在iOS设备上遇到了问题。我每秒钟都会有六张图像随机旋转。该过渡对于六张图像中的五张很好,但由于某些原因,在使用iPad或iPhone时,第六张图像在转换过程中会消失。您可以查看示例HERE。iOS设备上的CSS3转换问题
CSS:
.b1_needle {
width: 100%;
height: 100%;
z-index: 1;
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
-webkit-transition: -webkit-transform 0.5s ease-out;
transition: transform 0.15s linear;
}
.b2_needle {
width: 100%;
height: 100%;
z-index: 1;
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
-webkit-transition: -webkit-transform 0.5s ease-out;
transition: transform 0.15s linear;
}
.m1_needle {
width: 100%;
height: 100%;
z-index: 1;
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
-webkit-transition: -webkit-transform 0.5s ease-out;
transition: transform 0.15s linear;
}
.m2_needle {
width: 100%;
height: 100%;
z-index: 1;
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
-webkit-transition: -webkit-transform 0.5s ease-out;
transition: transform 0.15s linear;
}
.s1_needle {
width: 100%;
height: 100%;
z-index: 1;
-webkit-transform: rotate(0deg);
position: relative;
top: 6px;
transform: rotate(0deg);
-webkit-transition: -webkit-transform 0.5s ease-out;
transition: transform 0.15s linear;
}
.s2_needle {
width: 100%;
height: 100%;
z-index: 1;
-webkit-transform: rotate(0deg);
position: relative;
top: 7px;
transform: rotate(0deg);
-webkit-transition: -webkit-transform 0.5s ease-out;
transition: transform 0.15s linear;
}
的Javascript:
var ranNum;
function randomFromTo(from, to){
ranNum = Math.floor(Math.random() * (to - from + 1) + from);
ranNum = ranNum + "deg";
return ranNum;
}
setInterval(function newNum(){
document.getElementById("needle_b1").style.webkitTransform = "rotate("+randomFromTo(0,293)+")";
document.getElementById("needle_b2").style.webkitTransform = "rotate("+randomFromTo(0,285)+")";
document.getElementById("needle_m1").style.webkitTransform = "rotate("+randomFromTo(0,314)+")";
document.getElementById("needle_m2").style.webkitTransform = "rotate("+randomFromTo(0,223)+")";
document.getElementById("needle_s1").style.webkitTransform = "rotate("+randomFromTo(0,130)+")";
document.getElementById("needle_s2").style.webkitTransform = "rotate("+randomFromTo(0,95)+")";
}, 2000);
我本来以为是内存的问题,但除去所有,但一个图像的过渡不会有所作为。任何想法为什么会发生?
当我切换到ROTATE3D针完全消失。 – Coolbreeze 2011-06-03 14:57:22
对不起,我的怀疑是完全错误的。我编辑了答案并实际测试了这一点。不过,rotate3d会带来性能上的提升。 – Duopixel 2011-06-03 15:37:09
z-indices上的良好通话。这绝对是问题。谢谢。 – Coolbreeze 2011-06-03 15:45:13