2011-05-03 53 views
2

有谁知道iPad是否对画布标记有任何限制?画布上的iPad限制标记;画布上的网页故障标记动画

目前我正在制作一个使用翻书和音频标签组合来模拟内联视频内容的广告素材。动画被绘制到画布元素,并与正在播放的音频内容同步。当有人点击下面的四个按钮时,会播放4个短片。

http://cs.sandbox.millennialmedia.com/~tkirchner/rich/K/kungfupanda2_test/

我有但问题是,在iPad上。在播放一些动画后,移动Safari只是突然崩溃。当我在iPhone上播放时,它绝不会发生,但每次在iPad上都会发生。它不是一个特定的动画,或者是因为如果我点击不同的按钮组合,则它撞上的上一个剪辑播放良好,然后它决定在另一个剪辑上崩溃。

我认为这个问题可能与Safari提供的单个页面浏览量有关。我发现了一篇博文,很好地解释了这个问题。

http://roblaplaca.com/blog/2010/05/05/ipad-safari-image-limit-workaround/

根据该职位,一旦移动Safari浏览器到达存储器特定阈值,图像开始恢复空白。这与我迄今发现的一致。我正在测试的所有iPad都运行iOS 3.2.1(并且在任何人告诉我应该向我的老板解释没有人再使用3.X的情况下,我试过了...他们仍然希望我调查此问题)。我借用了一部运行iOS 4.2.1的同事iPad,该设备没有崩溃,但其中一些图像没有被绘制到画布上。

我非常肯定它的画布标签也存在问题,因为我尝试着试验运行动画而不画任何东西到画布元素,并且页面从不崩溃。

这就是为什么我认为它可能是Safari浏览器支持canvas标签的限制。当然,我愿意接受别人的建议。

回答

1

感觉有点奇怪回答我自己的问题,buuuut我想如果有人在这类问题上搜索,一个答案会有所帮助。

我相信我原来的假设是正确的。动画使用的图像总量大约为600+。我认为旧的iPad装载尽可能多,然后当它用完缓存并且画布标签试图绘制不再存在的图像时,它就会崩溃。

最终,我们最终向iOS 4.2及更高版本的设备投放了广告,因为问题似乎并未出现在这些较新的设备上。另外,我们进一步压缩了图像尺寸,这有助于减少我们存储在内存中的图像数量。

如果有人知道iOS 4.2或更高版本浏览器的缓存阈值大概是什么,如果您评论过,我会很感激。只是想知道我可以安全加载多少KB的图像数据。