OC如何给JS的函数参数赋值?

2017-07-24  本文已影响94人  smooth_lgh
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
 <h2>JavaScript And Objective-C</h2>
<script>
var init = function()
{
<!--    var net = '你好,这里是初始化的init';-->
    <!--  如何往net赋值?? -->
    getinit(net);
};
var getinit = function(net)
{
    alert(net);
}

init();
</script>
</body>
</html>
#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
   
}
-(void)viewDidAppear:(BOOL)animated{
    self.webView = [[UIWebView alloc]initWithFrame:CGRectMake(0, 20, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height)];
  //以下是webView加在网页的操作.
    self.webView.delegate = self;
    NSString* path = [[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"];
    NSURL* url = [NSURL fileURLWithPath:path];
    NSURLRequest* request = [NSURLRequest requestWithURL:url] ;
    [self.webView loadRequest:request];
    [self.view addSubview:self.webView];
}
//在WebView完全加在完毕的代理方法里面
- (void)webViewDidFinishLoad:(UIWebView *)webView {
    self.jsContext = [webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];
    //获取到JS里面名为"getinit"的变量
    JSValue *value = self.jsContext[@"getinit"];
   //然后给该变量函数的参数赋值,这样就大功告成了.
    [value callWithArguments:@[@"liuguanhua"]];
}
上一篇 下一篇

猜你喜欢

热点阅读