Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
移动Safari、Css动画在导航时冻结_Css_Animation_Mobile_Safari_Css Animations - Fatal编程技术网

移动Safari、Css动画在导航时冻结

移动Safari、Css动画在导航时冻结,css,animation,mobile,safari,css-animations,Css,Animation,Mobile,Safari,Css Animations,因此,我正在为一个客户端开发一个移动网站,并添加了一个css加载动画,当用户浏览页面或使用ajax加载时会触发该动画 动画在Chrome中运行良好,但在IOS中,我发现在触发导航(通过window.location.href或单击锚定标记)后,加载动画立即冻结。这发生在调用的开始,而不是页面加载之后,因此有相当长的时间css没有做任何事情,站点看起来好像挂断了什么。我还想补充一点,当我只是在做ajax调用时,动画是有效的 同时,我在动画加载和导航实际发生之间设置了一个延迟时间,这对网站的外观和感

因此,我正在为一个客户端开发一个移动网站,并添加了一个css加载动画,当用户浏览页面或使用ajax加载时会触发该动画

动画在Chrome中运行良好,但在IOS中,我发现在触发导航(通过window.location.href或单击锚定标记)后,加载动画立即冻结。这发生在调用的开始,而不是页面加载之后,因此有相当长的时间css没有做任何事情,站点看起来好像挂断了什么。我还想补充一点,当我只是在做ajax调用时,动画是有效的

同时,我在动画加载和导航实际发生之间设置了一个延迟时间,这对网站的外观和感觉有所帮助,但不是很好


关于为什么会发生这种情况,有什么解决方案或想法吗?

触发导航后冻结动画似乎是Webkit浏览器的一个普遍问题

如果您可以通过Ajax/XHR发送请求,则有一种解决方法。然后动画将继续播放。您可以在从后端服务接收到200/ok响应后触发导航


如果您加载整个下一个页面并通过Javascript交换内容,您可能需要注意浏览器历史API,即为交换的页面添加一个条目。

显然,如果适合您的情况,有一个解决方法:使用
转换
,而不是所有其他属性。看