这与图像库有关,因此当您“滑动”时,图像会从屏幕上加载和卸载,但中心图像始终会平滑显示。
它是从这里描述的 swipeview 库派生的代码:http: //cubiq.org/swipeview
问题是,在 javascript 在触摸结束事件中设置 webkitTransform 和元素实际开始在屏幕上动画之间存在 100-200 毫秒的延迟。
这种有问题的延迟只会间歇性地发生;在卸载/加载大约 15-20 张幻灯片后,它似乎开始持续发生。
在触摸移动事件中有这样的代码:
element.style.webkitTransitionDuration = 0
element.style.webkitTransform = "translate3d( etc. ) "
而且这个功能非常快,因此如果您在 ipad 上移动手指,元素会精确且“立即”跟随您的手指。
在触摸结束事件中有这样的代码:
element.style.webkitTransitionDuration = '<some_number>ms';
element.style.webkitTransform = "translate3d( etc. ) "
触摸结束事件就是问题所在。touch End 事件本身会在手指从 ipad 上移开的那一刻触发,但是,当问题发生时,css 更新不会触发屏幕上的实际动画,直到出现上述问题延迟之后。