web端调用iOS原生

OC端

- (void)loadWebPageWithString:(NSString*)urlString
{
  NSURLRequest *request =[NSURLRequest requestWithURL:[NSURL URLWithString:urlString]];
  [self setUserAgent];
  [_webView loadRequest:request];

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


  context[@"test"] = ^() {
    NSArray *args = [JSContext currentArguments];
     for (JSValue *jsVal in args) {  
            NSLog(@"%@", jsVal); 
        }        


}

web端

<html>  
<head>           
</head>  
<body>     
    <button id="hallo" onclick="buttonClick()">按钮</button>  
    <script>
    function  buttonClick()  {  
          test("参数1", "参数2");  //这里的参数个数无限制,可以空参数.(名称和OC端对应)。
    }
 }
    </script>
</body>  
</html>  
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容