1.  

 #import<JavaScriptCore/JavaScriptCore.h>

  1.  
  1. #pragma mark UIWebViewDelegate
  2.  
  3. - (void)webViewDidFinishLoad:(UIWebView *)webView
  4. {
  5. [SVProgressHUD dismissWithDelay:0.1];
  6. JSContext *jsContext = [webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];
  7.  
  8. jsContext[@"openLink"] =^(id obj,id obj1){
  9.  
  10. NSInteger attacmentId = ;
  11. NSString *attacmentType = nil;
  12.  
  13. NSRange range = [obj rangeOfString:@"link_"];
  14. attacmentId = [[obj substringFromIndex:range.length] integerValue];
  15.  
  16. NSRange rangeType = [obj1 rangeOfString:@"." options:NSBackwardsSearch];
  17. attacmentType = [obj1 substringFromIndex:rangeType.location];
  18.  
  19. InvestInnovationAttacmentViewController *vc = [[InvestInnovationAttacmentViewController alloc]init];
  20.  
  21. NSString *strUrl = [[MSCoreManager sharedManager]getAttachmetURL:@(attacmentId)];
  22. vc.urlLink = strUrl;
  23. vc.type = attacmentType;
  24. [self.navigationController pushViewController:vc animated:YES];
  25.  
  26. };
  27.  
  28. jsContext.exceptionHandler = ^(JSContext *context, JSValue *exceptionValue) {
  29. context.exception = exceptionValue;
  30. //比如把js中的方法名改掉,OC找不到相应方法,这里就会打印异常信息
  31. MSLog(@"异常信息:%@", exceptionValue);
  32. };
  33.  
  34. }//

Webview获取H5页面js方法参数的更多相关文章

  1. Js获取当前页面URL各种参数

    JS获取当前页面URL各种参数 一:Location Location 对象包含有关当前 URL 的信息. Location 对象是 Window 对象的一个部分,可通过 window.locatio ...

  2. 安卓端调用h5界面js方法和ios端调用h5界面js方法

      备注:本人为h5开发人员,不懂安卓和ios,这是开发小伙伴对接联调的主代码. 1.iOS端调用h5界面js方法:     2.安卓端调用h5界面js方法: @Override    protect ...

  3. 微信小程序web-view(webview) 嵌套H5页面 唤起微信支付的实现方案

    场景:小程序页面有一个web-view组件,组件嵌套的H5页面,要唤起微信支付. 先讲一下我的项目,首先我是自己开发的一个H5触屏版的商城系统,里面含有购物车,订单支付等功能.然后刚开始,我们公众号里 ...

  4. Webview之H5页面调用android的图库及文件管理

    h5页面打开图片管理器 一般页面在pc打开文件管理器是用 type="file"的代码,可是这在android的webview是无效的,必须为webview设定WebChromeC ...

  5. 两个页面js方法兼容

    1. a.js页面 //Js获取Url参数 function request(paras) { var url = location.href; var paraString = url.substr ...

  6. js方法参数默认值设置

    这里的默认值设置 很容易以为和php相似 function(v1,v2="test") { alert(v2); } 但这样是不对的,js方法,如需传参,甚至可以不用预定义(也就是 ...

  7. angularjs中安卓原生APP调用H5页面js函数,js写法应注意

    安卓原生app调用js方法,js方法应写在html下的script标签内,不能有任何function包裹,例如angular的controller层,这样APP也是获取不到的: 所以只有放在html中 ...

  8. js方法参数问题

    大家都知道java是强类型语言,而js是弱类型语言,其实,它们之间的区别不止这一点,还有方法参数及调用问题,参看下例: js中:这里定义了一个query()方法 function query() { ...

  9. 小程序-web-view嵌入H5页面遇到的bug

    遇到的问题1:ios页面中,内容过多时有下滑真是功能,但是下滑的时候回看到底部的微信自带的灰色背景及H5的域名(ios的webview中上/下拉露出黑灰色背景问题) 解决办法:给body添加样式--- ...

随机推荐

  1. python-selenium之firefox、Chrome、Ie运行

    测试脚本是否支持在不同浏览器运行firefox浏览器运行脚本 from selenium import webdriver driver=webdriver.Firefox() driver.get( ...

  2. 10 条有趣的 Linux 命令

    在终端工作是一件很有趣的事情.今天,我们将会列举一些有趣得为你带来欢笑的Linux命令. 1. rev 创建一个文件,在文件里面输入几个单词,rev命令会将你写的东西反转输出到控制台. # rev & ...

  3. 关于ref的一点理解

    先写一段代码 class Test { public int Count { get; set; } } static void Main(string[] args) { Test test = } ...

  4. iOS不使用JSONKit做Dic到JsonString的转换

    NSDictionary to jsonString [self DataTOjsonString:dic] -(NSString*)DicToJsonString:(id)object { NSSt ...

  5. serialVersionUID的作用

    Java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的.在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体(类)的seri ...

  6. React(JSX语法)-----JSX基本语法

    JSX------HTML tags vs React Components: 1.To render a html tag,just use lower-case tag names in JSX; ...

  7. oracle-trasnlate函数

    1.translate函数语法 TRANSLATE(string,from_str,to_str) 2.作用有两个: 1)可以替换string中的对应字符,from_str和to_str会做字符的一一 ...

  8. Ubuntu下配置Pyspider环境

    Ubuntu 14.04.4 LTS 1.ubuntu 系统自带Python 所以不用安装Python 注:安装前先更新下软件源 命令 :sudo apt-get update 2.开始安装pip 命 ...

  9. lnmp无法删除目录,目录包含.user.ini

    无法删除".user.ini"文件解决方法,运行后删除即可 chattr -i /home/wwwroot/yoursite/.user.ini 如果是需要修改文件,记得修改完以后 ...

  10. js内存泄露的几种情况

    想解决内存泄露问题,必须知道什么是内存泄露,什么情况下出现内存泄露,才能在遇到问题时,逐个排除.这里只讨论那些不经意间的内存泄露. 一.什么是内存泄露 内存泄露是指一块被分配的内存既不能使用,又不能回 ...