WKWebView的使用和JS交互

參考文章:
IOS WKWebview 使用集錦
WKwebView和JS交互
自己的OCdemo
自己的swiftDemo

JS調(diào)用OC的方法

1、首先要實現(xiàn)一個協(xié)議WKScriptMessageHandler

1.png

2、在初始化WebView時,配置config
2.png

在dealloc里移除
-(void)removeScriptMessageHandlerForName:(NSString *)name;
3、處理和實現(xiàn)方法

/**
 根據(jù)方法名做相應(yīng)的處理

 @param userContentController userContentController description
 @param message message description
 */
- (void)userContentController:(WKUserContentController *)userContentController didReceiveScriptMessage:(nonnull WKScriptMessage *)message{
    //message.name,message.body,message.frameInfo
    if ([message.name isEqualToString:@"WXPay"]) {
        dispatch_async(dispatch_get_main_queue(), ^{
            
        });
    }

至此,H5調(diào)用OC的方法已完成

OC調(diào)用JS方法

在WebView加載完成后調(diào)用

#pragma mark- ------------------------OC 調(diào)用JS方法
    //OC調(diào)用JS的方法:getImages()是方法名和參數(shù)
    [_webView evaluateJavaScript:@"getImages()" completionHandler:^(id _Nullable script, NSError * _Nullable error) {
        //代碼出錯可以在這里處理
    }];
 //pragma mark- ------------------------swift 調(diào)用JS方法
//在這里我調(diào)用的是點擊sendAPP按鈕的方法(注意打印結(jié)果輸出,我們并沒有點擊按鈕,但是輸出了fuction1方法)
        webView.evaluateJavaScript("sendApp()")  { (result, error) in
            guard error == nil else {
                print("there was an error")
                print(error)
                return
            }
            
        }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,626評論 4 61
  • 轉(zhuǎn)載自:https://github.com/Tim9Liu9/TimLiu-iOS 目錄 UI下拉刷新模糊效果A...
    袁俊亮技術(shù)博客閱讀 12,152評論 9 105
  • 在這漆黑的夜里,我愿是那天上的星星,默默照亮你前行的路。也許只是微弱的光,但我仍會拼盡全力,給你最溫暖的情意。 堅...
    珠海紅葉原創(chuàng)閱讀 189評論 0 1
  • 有些人總是自嘲自己胸?zé)o大志,從不肯談及理想等字眼,其實并不是真的心中無夢,只是在社會現(xiàn)實中抹殺了理想,讓自己符合社...
    花火123閱讀 648評論 1 2
  • 這是一個故事,后來成了事故。 他是我的一個同學(xué),像我們一樣是一個再平凡不過的在校大學(xué)生。在處處是宏偉建筑寬闊馬路充...
    黎尚榮閱讀 212評論 0 1

友情鏈接更多精彩內(nèi)容