与 Safari/Chrome 相比,相同 URL 的 UIWebView 行为不同

Posted

技术标签:

【中文标题】与 Safari/Chrome 相比,相同 URL 的 UIWebView 行为不同【英文标题】:UIWebView Act Different For The Same URL Compared To Safari/Chrome 【发布时间】:2015-12-19 17:56:52 【问题描述】:

我遇到了这种非常奇怪的行为。

我正在从我的 iPhone 浏览器 (Safari) 和我的项目中的 UIWebView 加载相同的 URL。到目前为止一切顺利。

出于某种原因,我在网站上设置了这个按钮同时出现在 UIWebView 和浏览器中

触发这个(仅在浏览器上,在 UIWebView 上它不会触发任何东西

有什么建议吗?

【问题讨论】:

【参考方案1】:

解决了。

我调查了一下,发现有WKWebView 完全支持javascript

更新

import UIKit
import WebKit
import JavaScriptCore


class Sample: UIViewController 
    var webView: WKWebView?


    override func viewDidLoad() 
        super.viewDidLoad()
        let url = NSURL (string: "http://www.google.com");
        /* Create our preferences on how the web page should be loaded */
        let preferences = WKPreferences()
        preferences.javaScriptEnabled = true

        /* Create a configuration for our preferences */
        let configuration = WKWebViewConfiguration()
        configuration.preferences = preferences
        /* Now instantiate the web view */
        webView = WKWebView(frame: self.view!.bounds, configuration: configuration)

        if let theWebView = webView
            /* Load a web page into our web view */
            let urlRequest = NSURLRequest(URL: url!)
            theWebView.loadRequest(urlRequest)
            view.addSubview(theWebView)
        


    




【讨论】:

以上是关于与 Safari/Chrome 相比,相同 URL 的 UIWebView 行为不同的主要内容,如果未能解决你的问题,请参考以下文章

移动 Safari/Chrome 上的 Angular 应用程序中出现严重的键盘延迟

移动 iOS 和 Android Safari/Chrome 之间的 JavaScript 差异

表格中的图像:如何使 Firefox 的行为与 IE 相同

Chrome/Safari 中的后退按钮错误

HTML 表单按钮值未在 Safari 和 Chrome 中发布

safari/chrome iphone中的动画速度没有变化