iPad(仅限 3G 机型)Safari 崩溃

Posted

技术标签:

【中文标题】iPad(仅限 3G 机型)Safari 崩溃【英文标题】:iPad (3G models only) Safari crash 【发布时间】:2012-05-04 23:22:38 【问题描述】:

我正在使用deck.js (http://imakewebthings.com/deck.js/) 重新创建公司PowerPoint 演示文稿,其中使用了相当多的CSS3 动画和javascript

在我只有 wifi 的 iPad2 上通过开发进行测试很好,但是在 wifi+3G iPad1、2 和 3 上检查页面加载时 Safari 崩溃(iPhone 4S 工作正常)。

一些基本的调试(一张一张地删除幻灯片)表明是 DOM 的大小导致了崩溃,因为当我将演示文稿从 31 张幻灯片减少到 21 张时它可以正常工作。

页面总大小约为 4.3MB,我尝试使用 appcache 清单无济于事。

我在各种论坛上看到很多人遇到 ios 5.1 Safari 崩溃的问题 - 有没有人遇到过 iPad 3G 机型在复杂 DOM 的压力下崩溃的经历?

非常感谢任何想法和建议。

【问题讨论】:

【参考方案1】:

事实上,deck.js 在此类设备上似乎是一个限制。 Martin Fowler 报告了同样的问题,并最终以增量方式加载幻灯片作为解决方法 (http://martinfowler.com/bliki/Infodeck.html)。

看看问题是来自加载 DOM 还是来自显示它会很有帮助(默认的 deck.js 主题未针对显示效率进行优化)。不幸的是,我无法测试,因为我没有 ipad,但我建议尝试隐藏所有幻灯片,看看是否仍然存在崩溃。一些 CSS 代码可以做到这一点:

.deck-container > .slide:not(.deck-current), .deck-container > .slide:not(.deck-child-current)  display: none; 

【讨论】:

以上是关于iPad(仅限 3G 机型)Safari 崩溃的主要内容,如果未能解决你的问题,请参考以下文章

iPhone 和 iPad 上的 Safari 在缩放时崩溃(双击和捏合)

苹果:降频事件仅限iPhone,与iPad/Mac无关!

iOS 9 Safari webkit 仅在 iPad 上崩溃(iPhone 工作正常)

使用 Hammer.js 时移动 Safari 崩溃

加载数据 EXC BAD ACCESS(仅限设备)

海报属性在 iPhone 5 上的视频标签中不起作用