JavaScriptCore框架 _JSContext (2)

下面实现: 在iOS中,实现HTML中的button点击方法。

//每次加载网页请求都会走该方法
- (void)webViewDidFinishLoad:(UIWebView *)webView{

#pragma mark ------ JSContext(OC点击方法实现)
    //将context与HTML文件关联起来
    JSContext *context = [webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];
    
    //log为网页中button的onClick方法
    context[@"log"] = ^(){

        NSLog(@"ssss");

    };
}     

在viewDidLoad方法中,加载网页文件

UIWebView *web = [[UIWebView alloc] initWithFrame:CGRectMake(10, 10, 100, 100)];
    [self.view addSubview:web];
    web.delegate = self;
    
    NSString *bundle = [[NSBundle mainBundle] pathForResource:@"index.html" ofType:nil];
    
    NSString *str = [NSString stringWithContentsOfFile:bundle encoding:NSUTF8StringEncoding error:nil];
    
    [web loadHTMLString:str baseURL:nil];

HTML文件index.html

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
            <title></title>
            </head>
    <body>
        <input type="button" value="success" onclick="log()" />
    </body>
<!--    //<script>-->
<!--        function log(){-->
<!--            console.log(1);-->
<!--        }-->
<!--    </script>-->
</html>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,296评论 4 61
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,612评论 25 709
  • 我的手指很甜,这不是回到我落魄的童年,也不是老年痴呆病人因为黄昏恋,而感觉到的生命的最后的温暖。这只是 清晰的一瞬...
    李一十八阅读 316评论 0 0
  • 年少的记忆里 多少回把你嵌进思念里 在那样一个相遇的渡口 在水一方 眼前多少次浮现醉人的景色 梦里的风陵渡 我一生...
    想飞的鱼521314阅读 357评论 4 2
  • 工作是每个人生活的重要组成,在工作中发挥价值,很多时候等同于『利用所长做一些公司需要的事情』。 从某种程度上说,几...
    成哥谁敢抢阅读 693评论 4 1