iPhone 5s上iOS 9上的网站崩溃/未加载

时间:2015-11-24 19:58:14

标签: javascript ios css iphone frontend

我正在把头发撕掉。

在运行iOS 7.1.1的iPhone 5s上,关于我的网页的一切都很好:

网站链接已针对安全目的而删除。

然而,在运行iOS 9的iPhone 5上,我收到以下错误,完全破坏/不加载页面,使其完全无法使用:

"A problem occurred with this web page so it was reloaded"

我已经搜索了关于这个的想法,但似乎没有真正的直接原因。

我在试验和错误测试中注意到的一件事是,如果我删除主app.min.css样式表,它将至少加载页面(DOM)。

但是,如果我然后加载CSS但这次使用空文件......则会出现错误。所以它似乎与我的CSS本身无关 - 只是与链接它的行为有关。

我已经完成并尝试删除所有脚本,图像等......没有运气。删除CSS与我解决问题的时间差不多,但即使使用空白的CSS文件,也会出现问题。这对我没用。

总结一下我所知道的:

  1. 这似乎是由于我app.min.css的加入 样式表。
  2. 即使CSS被包含为完全空白的文件,错误仍然会发生。
  3. 删除所有JS并没有解决问题 问题。
  4. 它发生在任何页面上,而不仅仅是登录页面或任何页面 特定区域。在我的旧版iOS上工作正常但不是 iPhone 5s上更新的9+
  5. 我希望你能提供帮助。我很乐意提供孤立的代码示例,但由于这个问题是“在那里”,我不知道该写什么作为测试用例。

    如果有任何明显的东西你可以注意到开发工具我很想知道。谢谢!

    以下是iOS模拟器的屏幕截图:

    iPhone reloaded error

2 个答案:

答案 0 :(得分:2)

经过大量调试后,我发现有问题的CSS完全导致iOS9 +上的webkit浏览器崩溃和烧毁(Safari和Chrome):

::-webkit-scrollbar-thumb:window-inactive {
    // Properties
}

删除此行现在可以删除错误并正确加载页面。

这个问题很难调试,因为iPhone会大量缓存你的CSS文件。为了解决这个问题,在测试时通过将随机查询字符串附加到结尾来缓存你的CSS(PHP):

<link rel="stylesheet" href="/path/to/css/file.css?refresh=<?php echo md5(rand()); ?>">

请务必在完成调试后将其删除,以便您可以利用缓存。

Twitter发布此处分享:https://twitter.com/michaelpumo/status/669478677600669696

希望这有助于那里的人。真是太痛苦了!

答案 1 :(得分:1)

好像您的网站仅在Google Chrome上打开。 Safari崩溃了。在Mozilla上开启Firefox有所启发。

我在控制台app.min.css

上看到此错误

位于@font-face { font-family: "Tiempos Regular"; font-style: normal; font-weight: normal; src: url("../fonts/TiemposTextWeb-Regular.eot?#iefix") format("embedded-opentype"),url("../fonts/TiemposTextWeb-Regular.woff") format("woff") }

<label for="search">Search: </label>
<input type="text" name="search" id="search"/>

从css中取出该字体,然后尝试一下。它应该工作。

希望它有所帮助!