JS与UIWebview交互原理摘记(WebViewJavascriptBridge)
2014-03-24 16:14
507 查看
最近用到了 WebViewJavascriptBridge这个库来与JS交互。
由于没用过js,也没有什么web端的开发经验,竟然一直对这库的原理表示不解,面试时候被问及,囧了好久。
为了弥补下我受伤的心灵,特此写下此贴。
UIWebView交互JS,很简单,直接调用webView的API,[webViewstringByEvaluatingJavaScriptFromString:@""];
就可以实现调用js的代码。原理应该是在页面中提前注入了类似于delegate的js代码,然后通过调用bridge的js代码来运行部署于页面内的函数。
至于JS交互UIWebView,是通过实现webView的delegate,通过在
- (BOOL)webView:(UIWebView
*)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
中识别出自定义的URL区分处理,就可以读取到JS的消息啦
看了源码后感觉实现原理挺简单的,感觉自己的经验还是不足呀。
由于没用过js,也没有什么web端的开发经验,竟然一直对这库的原理表示不解,面试时候被问及,囧了好久。
为了弥补下我受伤的心灵,特此写下此贴。
UIWebView交互JS,很简单,直接调用webView的API,[webViewstringByEvaluatingJavaScriptFromString:@""];
就可以实现调用js的代码。原理应该是在页面中提前注入了类似于delegate的js代码,然后通过调用bridge的js代码来运行部署于页面内的函数。
至于JS交互UIWebView,是通过实现webView的delegate,通过在
- (BOOL)webView:(UIWebView
*)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
中识别出自定义的URL区分处理,就可以读取到JS的消息啦
看了源码后感觉实现原理挺简单的,感觉自己的经验还是不足呀。
相关文章推荐
- Android - SimpleDateFormat 详解
- Android - SimpleDateFormat 详解
- android自带的api的例子很多
- android摘要
- Android 百度地图的使用
- Cocos2d-x之CCImage深入分析
- yum install报错:Another app is currently holding the yum lock
- Preserving the state of an Android WebView on screen orientation change
- Struts2的声明式异常处理 <global-exception-mappings>
- IOS自定义UI组件的外观——使用UIAppearance协议自定义视图()
- 在xcode中编译新建的cocos2d-x项目不运行模拟器
- Android编译详解之lunch命令
- Android之NDK开发的简单实例
- 对Android开发者有益的40条优化建议
- Android短信欺诈(Smishing)漏洞
- Android开发推荐资料大合集
- Android WebRTC 音视频开发总结(三)-- 信令服务和媒体服务
- Android源码50例汇总,欢迎各位下载
- Detecting .NET application memory leaks
- 【热门收藏】iOS开发人员必看的精品资料(100个)