8

我的网站http://remotejobs.io始终使 Safari 崩溃。昨晚我在 Verizon 商店时第一次注意到崩溃,我尝试在 iPad 上测试该网站的浏览器。因此,我在同一家商店又尝试了 2 台 iPad,每次我尝试访问该域时,该网站都会在所有 3 台设备上崩溃 iOS Safari。

确切的工作流程是:

  1. 打开 Safari
  2. 输入http://remotejobs.io

而已。一旦你点击去网站崩溃。

这也发生在桌面 Safari 上(仅在 OSX 10.8.3 的 6.0.3 中测试),并且每次都会生成错误报告。这是生成的错误报告之一的副本:http: //go.jag.is/OGcS

该站点没有抛出任何 JS 错误,并且在我测试过的其他现代浏览器上运行良好,包括 Chrome、Firefox 甚至 IE9(令人震惊)。

一件奇怪的事情是,它似乎只会在 iPad 上崩溃 iOS Safari,而不是 iPhone,因为我每次都可以在我的 iPhone 上成功加载该网站。

到底是什么导致了这种情况,我该如何调试它?

更新: 我尝试注释掉主样式表,并且该站点不再在没有该样式表的情况下使 Safari 崩溃。我尝试了常规样式表和缩小样式表,都使浏览器崩溃。

更新 2: 我通过注释掉 JS 并保留 CSS 将其范围缩小到 CSS,但它仍然崩溃了。然后我尝试删除所有转换属性,它不再崩溃。显然,过渡属性导致了崩溃。

4

4 回答 4

10

因此,我能够根据 Adam Moore 的建议将问题缩小到 CSS,然后根据transitionJonathan Sampson 的评论将问题缩小到属性声明。

我删除了所有行,transition网站不再崩溃。

因此,我查看了这些值,并尝试统一持续时间值,看看这是否会有所帮助,因为我在不同属性中设置了几个不同的持续时间值,包括.5s一个、.3s另一个以及.25s更多。但是统一它们并没有影响任何事情——仍然崩溃了。

最后,我尝试将transition-propertyfrom更改allcolor,因为color这是我真正改变的唯一一件事,并且不再崩溃!显然,这就是解决方案。似乎 Safari 在尝试转换所有属性时感到窒息。

于 2013-04-13T15:56:12.253 回答
5

您的网站似乎没有在 Windows 7 上使 Safari 5.1 崩溃。要调试导致问题的原因,首先关闭 CSS,然后逐个禁用 JS 文件,直到网站停止崩溃。一旦你弄清楚它是哪个 CSS 文件或 JS 文件,然后发布一个指向该文件的链接,我会看看我是否能提供帮助!

于 2013-04-13T13:05:38.317 回答
2

我在 Safari 中偶然发现了同样的问题,并尝试了这里提到的所有内容。我还检查了 CSS 验证器中的 css 并修复了一些问题。

但是我的崩溃触发器是用百分比值填充。我从填充转换了 %-Values,一切都很好。

于 2015-02-23T16:39:21.953 回答
1

-webkit-transform-style: preserve-3d !important;

导致 Safari 因错误而不断重新加载。删除它并且它起作用了。:)。

Safari - 版本 8.0.8 (10600.8.9) OSX EL Captain

于 2016-02-16T02:03:11.757 回答