如果有人提出这个问题,我深表歉意,但是我找不到任何答案或解决方案。我想从“ UIWebView”中调用JavaScript函数,并迅速进行监听。我发现的任何示例都使用“ WKWebView”。必须有一种简单的方法来监听JavaScript函数,如下所示:
// HTML / JS <div id ="myDiv" onclick="listenInSwift()">myItem</div>
UIWebView是否可能?谢谢大家!
listenInSwift像这样实现:
listenInSwift
function listenInSwift() { window.location = 'yoururlscheme://somehost?greeting=hello' }
然后在您的UIWebViewDelegate课程中使用以下代码来监听此URL :
UIWebViewDelegate
func webView(_ webView: UIWebView, shouldStartLoadWithRequest request: NSURLRequest, navigationType navigationType: UIWebViewNavigationType) -> Bool { if request.URL.scheme == 'yoururlscheme' { print('Hello JavaScript...') } }
不要忘记在Xcode中注册您的URL方案(在本例中为“ yoururlscheme”)。
要在Web视图中加载本地文件,请尝试以下操作:
let baseURL = NSURL.fileURLWithPath(NSBundle.mainBundle().bundlePath); let relativePath = "www/\(file)" let fileURL = NSURL(string: relativePath, relativeToURL: baseURL); let URLRequest = NSURLRequest(URL: fileURL!); webView.loadRequest(URLRequest)