js交互無非兩種伸但,js調(diào)oc,oc調(diào)js留搔。
1更胖、先說oc調(diào)js,就一句話:
NSString*messod = [NSString stringWithFormat:@"%@(‘%@’,%d)", callBaqck, @“1”, 0];
ps:如果參數(shù)帶字符串隔显,要加單引號(hào)
[webView stringByEvaluatingJavaScriptFromString:messod]
2却妨、js調(diào)oc
也很簡(jiǎn)單,導(dǎo)入JavaScriptCore.framework括眠,在類里引入頭文件#import <JavaScriptCore/JavaScriptCore.h>
接下來注入js方法管呵,在viewDidLoad調(diào)用即可
- (void)xxx
{
JSContext* context = [self.webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];
//payWithKeys就是js調(diào)用的方法
context[@"payWithKeys"] = ^(){
NSArray *args = [JSContext currentArguments]; //js傳過來的參數(shù),是個(gè)數(shù)組
//接下來就是根據(jù)參數(shù)調(diào)方法啦~
};
}