我创建了一个小型交互模块,用户可以通过图像进行混洗。该模块工作正常(即使它尚未优化)除iOS iOS以外。如果用户只点击一个图像,则洗牌动画会正常显示,但按下Shuffle按钮时情况并非如此。使用jQuery对图像进行混洗 - 性能问题
随机播放按钮代码:
$("#shuffle").click(function(){
$(".slide").each(function(){
var target = $(this);
shuffleThis(target);
})
})
随机播放功能:
function shuffleThis(target, thisType){
for (var i = 0; i < 5; i++) {
if(i === 4){
setTimeout(function() {
var rand = randomizeIMG(thisType);
var finalRand = rand.split(/_(.+)?/)[0];
target.append('<img src="assets/img/rds/'+ rand +'" />');
target.children("img:first").fadeOut("slow").remove();
}, 75*i);
} else {
setTimeout(function() {
var rand = randomizeIMG(thisType);
target.append('<img src="assets/img/rds/'+ rand +'" />');
target.children("img:first").remove();
}, 75*i);
}
}}
好像IOS未能重绘DOM。也许是一个setTimout问题。
如何改善iOS下的结果?
您洗牌的图片有多少,以及您遇到过哪些特定的iOS设备? – Tomanow
在制作过程中,我有一组60幅图像,但在显示一幅新图像之前只能通过五幅图像进行混洗。在演示中,即使使用12个不同的图像,也可以看到问题。这发生在iOS 7.0.6下的iPad/iPhone上。 –