Call swift function with javascript using UIWebview(使用 UIWebview 使用 javascript 调用 swift 函数)
问题描述
如果有人问过这个问题,我深表歉意,但我找不到任何答案或解决方案.我希望从UIWebView"调用一个 JavaScript 函数并迅速收听它.我发现的任何示例都使用WKWebView".必须有一种简单的方法来监听 JavaScript 函数,如下所示:
I apologize if this has been asked but I was unable to find any answer or solution. I am looking to call a JavaScript function from a "UIWebView" and listen for it in swift. Any example I have found uses "WKWebView". There has to be an easy way to listen to a JavaScript function like the below:
// HTML / JS
<div id ="myDiv" onclick="listenInSwift()">myItem</div>
这可以通过 UIWebView 实现吗?谢谢大家!
Is this possible with a UIWebView? Thanks all!
推荐答案
像这样实现 listenInSwift
:
function listenInSwift() {
window.location = 'yoururlscheme://somehost?greeting=hello'
}
然后在您的 UIWebViewDelegate
类中使用此代码侦听此 URL:
Then listen for this URL with this code in your UIWebViewDelegate
class:
func webView(_ webView: UIWebView, shouldStartLoadWithRequest request: NSURLRequest, navigationType navigationType: UIWebViewNavigationType) -> Bool {
if request.URL.scheme == 'yoururlscheme' {
print('Hello JavaScript...')
}
}
不要忘记在 Xcode 中注册您的 URL Scheme(在本例中为yoururlscheme").
Don't forget to register your URL Scheme (in this case 'yoururlscheme') in Xcode.
要在 web 视图中加载本地文件,试试这个:
To load a local file in the web view, try this:
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)
这篇关于使用 UIWebview 使用 javascript 调用 swift 函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:使用 UIWebview 使用 javascript 调用 swift 函数
基础教程推荐
- 如何让对象对 Cocos2D 中的触摸做出反应? 2022-01-01
- android 应用程序已发布,但在 google play 中找不到 2022-01-01
- UIWebView 委托方法 shouldStartLoadWithRequest:在 WKWebView 中等效? 2022-01-01
- 如何在 UIImageView 中异步加载图像? 2022-01-01
- 如何在没有IB的情况下将2个按钮添加到右侧的UINavigationbar? 2022-01-01
- 当从同一个组件调用时,两个 IBAction 触发的顺序是什么? 2022-01-01
- 如何在 iPhone 上显示来自 API 的 HTML 文本? 2022-01-01
- 在 gmail 中为 ios 应用程序检索朋友的朋友 2022-01-01
- Android:对话框关闭而不调用关闭 2022-01-01
- Kivy Buildozer 无法构建 apk,命令失败:./distribute.sh -m “kivy"d 2022-01-01