UIWebView 啥时候开始识别 Javascript 代码

Posted

技术标签:

【中文标题】UIWebView 啥时候开始识别 Javascript 代码【英文标题】:When does UIWebView start recognising Javascript codeUIWebView 什么时候开始识别 Javascript 代码 【发布时间】:2015-01-17 02:31:13 【问题描述】:
// MARK: - UIWebViewDelegate
func webViewDidFinishLoad(webView: UIWebView) 

    let initResponse =  self.stringByEvaluatingjavascriptFromString("initialize('','','',\(isPreview))")

    if (initResponse != "") 
      isLoaded = true

    

    println("\(viewType) initResponse \(initResponse)")

在我的程序中,我试图通过调用 Javascript 函数来初始化 UIWebView。 UIWebView 加载了本地模板文件。

显然,即使调用了webViewDidFinishLoad,webview 仍然没有响应我的 javascript 命令。

因此,我认为 Web 视图实际上可以开始接受 Javascript 调用的另一个时刻。在我看来,这是 document 准备好用于我本地加载的 html 文件的时候。

但是,我怎么知道我的 UIWebview 何时准备好接收 Javascript 代码?

【问题讨论】:

【参考方案1】:

对于ios/UIWebView,请尝试一下

- (void)webViewDidFinishLoad:(UIWebView *)webView

    if (![[webView stringByEvaluatingJavaScriptFromString:@"document.readyState"] isEqualToString:@"complete"])
        return;
    // Now it's ready


对于 OS X,webView:didFinishLoadForFrame: 就是你想要的。

【讨论】:

我认为这是针对 OSX 的

以上是关于UIWebView 啥时候开始识别 Javascript 代码的主要内容,如果未能解决你的问题,请参考以下文章

UIWebView 缩放问题

iOS UIWebView自动识别电话拨打功能禁用

为 iOS 构建自己的基于 WebKit 的 UIWebView 可行吗?

iOS 的 UIWebView 使用的 JavaScript 引擎叫啥名字?

如何在 FlipBoard 或 MobileRss 中识别自定义 UIWebView

调用委托的委托