JS与OC交互
发布日期:2022-02-08 18:03:28
浏览次数:31
分类:技术文章
本文共 1450 字,大约阅读时间需要 4 分钟。
js调用OC:
① 直接调用方法 ② 通过对象调用方法第一种:
-(void)webViewDidFinishLoad:(UIWebView *)webView { //首先创建JSContext 对象(此处通过当前webView的键获取到jscontext) JSContext *context=[webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"]; // MethodName是js的方法名称 //此方法最终将打印出所有接收到的参数,js参数是不固定的 我们测试一下就知道 context[@"MethodName"] = ^() { NSArray *args = [JSContext currentArguments]; for (id obj in args) { NSLog(@"%@",obj); } }; //此处我们没有写后台(但是前面我们已经知道iOS是可以调用js的,我们模拟一下) //首先准备一下js代码,来调用js的函数test1 然后执行 //一个参数 NSString *jsFunctStr=@"MethodName('参数1')"; [context evaluateScript:jsFunctStr]; //二个参数 NSString *jsFunctStr1=@"MethodName('参数a','参数b')"; [context evaluateScript:jsFunctStr1]; }
第二种
// WebViewController.m@protocol JSObjcDelegate-(void)ShareInfo:(NSDictionary *)shareDict;@end@interface WebViewController () @property (nonatomic, strong) JSContext *jsContext;@end- (void)webViewDidStartLoad:(UIWebView *)webView { self.jsContext = [webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"]; self.jsContext[@"JSObjct"] = self; // JSObjct:JS的对象 self.jsContext.exceptionHandler = ^(JSContext *context, JSValue *exceptionValue) {// NSLog(@"异常信息:%@", exceptionValue); };}-(void)ShareInfo:(NSDictionary *)shareDict { if (shareDict.count) { // ... }}
转载地址:https://blog.csdn.net/Evelynzn/article/details/80222139 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年04月04日 15时55分15秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Linux的epoll
2021-06-30
C 语言编译器 gcc 命令详解
2021-06-30
最简便的清空memcache的方法
2021-06-30
php析构函数的用法
2021-06-30
用memcache.php监测memcache的状况
2021-06-30
Linux必学的网络操作命令
2021-06-30
ASP.NET格式化日期
2021-06-30
按esc键退出的一个函数
2021-06-30
列表框操作函数集合
2021-06-30
在IE客户端调用windows系统资源
2021-06-30
document.all与WEB标准
2021-06-30
用IE重起计算机或者关机
2021-06-30
如何使得按确定和取消按纽转到两个不同的页面!
2021-06-30
DataGrid 的 全选/取消全选 控制(CheckBox)
2021-06-30
虚拟主机上用Asp.net实现Urlrewrite
2021-06-30
ASP.NET 应用中大文件上传研究
2021-06-30
如何最大限度提高.NET的性能
2021-06-30
短信收发类无错版JustinIO.cs
2021-06-30
短信编码类无错版PDUdecoding.cs
2021-06-30
CDMA模块上网设置的过程
2021-06-30