查看信息的广泛而且没有找到明确的清单。请添加您的观察结果。我相信它会派上用场。
答案 0 :(得分:14)
它没有Nitro Javascript引擎。与Safari相比,这使得在UIWebView中执行Javascript的速度要慢得多。
http://www.tuaw.com/2011/03/18/apple-confirms-some-webkit-optimizations-unavailable-to-ios-apps/
http://ariya.ofilabs.com/2012/06/nitro-javascriptcore-and-jit.html
答案 1 :(得分:11)
我发现一件事,我暂时的悲伤是UIWebView
在通过JS设置样式值时更加严格。所以说在移动野生动物园
element.style.width = 300;
可以正常使用,但在UIWebView
中,您必须将值设置为
element.style.width = 300 + "px";
我正在慢慢发现其他差异。我会像我一样更新。
答案 2 :(得分:11)
当UIWebView滚动其内容时,它会冻结所有JavaScript事件,直到滚动结束。所以你绝对不能以编程方式观察和/或控制滚动过程,就像这种常见的方式:
window.onscroll = function() {
var scrolled = window.pageYOffset || document.documentElement.scrollTop;
// do something
}
因为变量'scrolled'只会在滚动完成后更新一次。
答案 3 :(得分:8)
您可以将Mobile Safari中HTML5 SQL的初始最大大小设置为50MB,但UIWebView似乎限制为5MB。它拒绝任何更高的东西。
答案 4 :(得分:3)
我遇到的两个显而易见的问题是身份验证和带框架的页面。
对于身份验证,UIWebView不会自动处理身份验证挑战,而是由开发人员来处理它们。
对于具有框架集的页面,UIWebView不会跟踪框架内页面转换的浏览历史记录,这可能是一个理想的功能。它需要一些摆弄才能实现这一目标。
答案 5 :(得分:1)
在性能方面,这是您可能找到的最佳摘要:http://www.guypo.com/mobile/ios-browsers-speed-bakeoff/
答案 6 :(得分:-5)
主要区别在于页面顶部附带的地址/搜索栏和用户代理。
(注意:还有很多其他的,但这些是通常很重要的少数)