原生API實(shí)現(xiàn)H5頁面點(diǎn)擊事件接管

首先h5方法要求

? 如圖:

button 后面的onclick="commitss()" , 點(diǎn)擊方法名commitss()是兩邊商量好固定不變的

在app端:

? - (void)webViewDidFinishLoad:(UIWebView *)webView

{

JSContext* jsContext = [webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];

//捕獲異常信息

jsContext.exceptionHandler = ^(JSContext *context, JSValue *exceptionValue)

{? ? context.exception = exceptionValue;

NSLog(@"異常信息:%@", exceptionValue);

};

jsContext[@"commitss"] = ^(NSString *str)

{

NSLog(@"_________%@",str);

};

}

注:// str 為點(diǎn)擊網(wǎng)頁上的button傳遞的參數(shù)

參數(shù)的格式要button傳遞的參數(shù)類型一致才可取到對應(yīng)的參數(shù)信息。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 隨著H5技術(shù)的興起,在iOS開發(fā)過程中,難免會遇到原生應(yīng)用需要和H5頁面交互的問題。其中會涉及方法調(diào)用及參數(shù)傳值等...
    Chris_js閱讀 3,114評論 1 8
  • 本博客主要分以下幾個(gè)方面來介紹iOS中的JavaScriptCore JavaScriptCore簡介 JavaS...
    dullgrass閱讀 4,297評論 1 38
  • JavaScriptCore框架主要是用來實(shí)現(xiàn)iOS與H5的交互。由于現(xiàn)在混合編程越來越多,H5的相對講多,所以研...
    水靈芳蕥閱讀 1,438評論 1 8
  • 跟原生開發(fā)相比,H5的開發(fā)相對來一個(gè)成熟的框架和團(tuán)隊(duì)來講在開發(fā)速度和開發(fā)效率上有著比原生很大的優(yōu)勢,至少不用等待審...
    大沖哥閱讀 1,865評論 0 7
  • 當(dāng)你的水平還沒達(dá)到一定程度時(shí),別人告訴你的道理你也許不能理解,你擁有的東西你也許不能一直占有,這是所謂德不...
    素手剝新橙閱讀 594評論 0 1