【发布时间】:2019-03-04 22:09:33
【问题描述】:
我需要 javascript 快速发送消息但不起作用。
Swift 代码:
class FirstViewController: UIViewController, WKUIDelegate, WKScriptMessageHandler {
@IBOutlet weak var webview: WKWebView!
func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage) {
print( "Enter here" )
if message.name == "jsHandler" {
print( message.body );
}
}
override func viewDidLoad() {
super.viewDidLoad()
let htmlPath = Bundle.main.path(forResource: "index", ofType: "html", inDirectory: "web")
let url = URL(fileURLWithPath: htmlPath!)
let request = URLRequest(url: url)
let user = WKUserContentController()
user.add(self, name: "jsHandler")
webview.configuration.userContentController = user
webview.uiDelegate = self
webview.navigationDelegate = self
webview.load(request)
}
javascript代码:
$(document).on( 'click', '.element', function() {
window.webkit.messageHandlers.jsHandler.postMessage( "Invoke swift" );
} );
有什么不对还是缺少什么?
【问题讨论】:
-
我找到了解决方案,我会在上面发布答案!
标签: javascript ios swift