实现iOS webview捕获使用H5中按钮的点击方法,可以使用JSContext
。
1、在工程中Linked Frameworks and Libraries
中加入JavaScriptCore.framework
2、在使用的地方#import <JavaScriptCore/JavaScriptCore.h>
3、实现webview的代理方法
- (void)webViewDidFinishLoad:(UIWebView *)webView {
JSContext *content = [self.webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];
content[@"textandroid"] = ^() {
NSArray *arguments = [JSContext currentArguments];
for (JSValue *jsValue in arguments) {
NSLog(@"=======%@",jsValue);
}
};
}
以上代码中的@"textandroid"是H5中的方法 jsValue
是获取的ID
H5注释
<button id="Lbtn1" onclick="textandroid(123)">头部</button>
//获取点击按钮所属id方法
function textandroid(id){
window.java.getButtonText(id);
}
4、获取jsValue后进行操作
更多JSContext方法还没有研究。。。
网友评论