js 与 native 交互时有时候不能触发shouldStartLoadWithRequest方法
2016-09-09 16:28
543 查看
UIWebView这个控件与 H5联调时一般通过下面这个代理方法,也就是 H5上有页面链接跳转时native会回调该方法,在这个方法内可以截取到即将跳转这个动作携带的链接: - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType; 下面这种方式(H5端同学的代码)会导致某些手机上(我手上这个是 iOS8.4.1)无法捕捉进入该方法(ZYY 是自己 app 的 scheme,ZYY://可以代替当前 H5页面host) window.local.href = 'ZYY://goToGoodsDetail={"goodsId":"380"}' //以下两种方法都可以解决 iOS8该方法不触发的问题 $(obj).attr("href",'ZYY://goToGoodsDetail={"goodsId":"'+goodsId+'"}'); window.location.hash='ZYY://goToGoodsDetail={"goodsId":"'+goodsId+'"}';
比较推荐第一种方式。
相关文章推荐
- iOS: JS和Native交互的两种方法
- iOS: JS和Native交互的两种方法,iosjsnative交互
- js中的startWith、endWith、trim方法
- iOS: JS和Native交互的两种方法,iosjsnative交互
- js中startWith、endWith 函数不能在任何浏览器兼容的问题
- Android js和native交互的两种方法
- js构造 startWith 方法 endWith
- iOS: JS和Native交互的两种方法
- iOS开发 - OC之JS和Native交互的两种方法,ios js与native交互
- 给你的 js string 加上startWith endWith 方法
- 关于android混淆之后js与native方法交互
- JS和Native交互之 -UIWebView的代理方法
- JS的trim() startWith() endWith() 方法
- webview js 与java代码交互问题(成员变量名 和方法名不能重名 啃爹啊)
- jQuery的ajax()检验用户名;通过jQuery的load()/get()/post()方法实现;使用XMLHTTPRequest对象来进行AJAX的异步数据交互
- JS_常用方法_dowhileExist , addLoadEvent
- XMLHttpRequest Ajax 实例简介 (用此方法可实现JS与SQL连接)
- flash与js交互ie跟ff通用的方法
- 对js中startWith和endWith的扩展
- 对js中startWith和endWith的扩展