加载一个隐藏的iframe来实现的,通过将iframe的src指定为一个特殊的URL
// Javascript语言
// 通知iPhone UIWebView 加载url对应的资源
// url的格式为: gap:something
function loadURL(url) {
var iFrame;
iFrame = document.createElement("iframe");
iFrame.setAttribute("src", url);
iFrame.setAttribute("style", "display:none;");
iFrame.setAttribute("height", "0px");
iFrame.setAttribute("width", "0px");
iFrame.setAttribute("frameborder", "0");
document.body.appendChild(iFrame);
// 发起请求后这个iFrame就没用了,所以把它从dom上移除掉
iFrame.parentNode.removeChild(iFrame);
iFrame = null;
}
|
在这里,可能有些人说,通过改document.location也可以达到相同的效果。关于这个,一般情况下,改document.location是可以,但是改document.location有一个很严重的问题,就是如果我们连续2个js调native,连续2次改document.location的话,在native的delegate方法中,只能截获后面那次请求,前一次请求由于很快被替换掉,所以被忽略掉了。
分享到:
相关推荐
js与native的交互,通过WebViewJavascriptBridge来实现交互!
主要介绍了Android Native 内存泄漏系统化解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
Android 和 IOS WebView javaScript与 Native 互相调用(JS 与O-C Java )
资源为完整demo,实现了由js端向native(android)端传递数据的功能(里面没加native端向js端传递数据的功能哦)。其中cordova-plugin-sendjsmessage文件为自定义cordova插件,适用平台为android。
ReactNative与原生通信的demo
AndroidNative内存泄漏系统化解决方案.docx
ReactNative启动白屏问题解决方案,教程.docx
JSBridge交接与Native通信是Web端调用进行封装,之前一直做移动web开发,项目需要webview native的混合模式所以需要一些web和native的交互,由于JSBridge Native端作者提供web调用方式太奇怪,也跟web开发代码不耦合...
包含js与webview、wkwebview的交互,自己的一点研究与学习,能解决大部分的交互问题。GitHub地址:https://github.com/FarWinter/IOS-JsAndNativeDemo.git,后面会有更新。研究出什么更好的会持续上传,谢谢大家。
使用ReactNative技术的App端整体框架解决方案
react-native-root-toast, 像组件一样反应原生 toast,纯javascript解决方案 react-native-root-toast通知:- react-native-root-toast> = 2.1.0 only supports react-native> = 0.47.0, for reac
为了了解决这些问题,让你掌 握 JS 与端交互所⽤用到的知识点,知识⼩小集 打算从基础出发,介绍 JS 与 iOS 交互时⽤用到的技术点,⽐比 如 JSCore、JS 基础、JSCore 的实际使⽤用场景(深度剖析 JSPatch 的实现)
React-Native与原生(Android)的三种交互通信方式
该压缩包的内容主要是基于android系统演示native层进行binder通信的源码,里面分为bp和bn直接如何设计,可以给那些需要再native层进行binder通信的开发提供一个参考
Unlike existing JavaScript-for-mobile approaches, React Native actually renders natively, giving you the speed, look, and feel of a native mobile application. With this practical book, web ...
Android React Native原生模块与JS模块通信的方法总结 前言: 在做React Native开发的时候避免不了的需要原生模块和JS之间进行数据传递,这篇文章将向大家分享原生模块向JS传递数据的几种方式。 方式一:通过...
Js与Native交互函数封装,适配了Android与iOS系统,模仿微信公众号jssdk,前端可以通过CDN方式引用Js文件 软件开发设计:PHP、QT、应用软件开发、系统软件开发、移动应用开发、网站开发C++、Java、python、web、C#等...
这个是native服务直接使用Parcel进行通信的一个接口,提供给后面使用。
一健国际化全流程解决方案,适用于Nodejs/VUE/REACT/uniapp等