场景   在移动端开发中,最为流行的开发模式就是hybmid开发,在这种native和h5的杂糅下,既能在某些需求中保证足够的性能,也可以在某些列表详情的需求下采用h5的样式控制来丰富内容.但是在大型产品的开发中,往往前端的职责不仅仅是h5的编写,还包括基本业务逻辑的实现,比如在h5页面中确定当前用户所在的城市(location),我们可以采用html5规范的Geolocation接口,但是更为通俗的做法是调用native的本地接口,因此这种常规的场景就涉及到了js和native层通信的问题,这…
今天需要在iframe内做一个弹窗,但使用弹窗组件的为子窗口,所以弹窗只在子窗口中显示掩膜层和定位,这样不符合需求. 后来晓勇哥指点,了解到一个以前一直没关注到的东西,每个窗口的全局变量,其实都存在对应窗口的window对象下,因此只要取到某个窗口的window对象,就可以取得该窗口的全部全局变量,因此就有了父.子窗口之间的JS通信的方法. 子调用父 parent.xx // 父窗口的xx变量或方法 top.xx // 顶层窗口的xx变量或方法 父调用子 document.querySelect…
首先介绍SWFObject的用法: swfobject.embedSWF(swfUrl, id, width, height, version, expressInstallSwfurl, flashvars, params, attributes) 有5个必须的参数和4个可选的参数: 1. swfUrl(String,必须的)指定SWF的URL. 2. id(String,必须的)指定将会被Flash内容替换的HTML元素(包含你的替换内容)的id. 3. width(String,必须的)指…
一.flex与js通信(通过flex调用js方法) var urlR:URLRequest = new URLRequest("javascript:test('from flex')"); navigateToURL(urlR, "_self"); 其中URLRequest中的js方法必须用引号test是js方法名,'from flex'是该js方法的参数. 另一种相互通信方法: ExternalInterface.addCallback("getKyq…
AS3代码,可做文档类; package { import flash.display.Sprite; import flash.events.*; import flash.external.ExternalInterface; import flash.text.TextField; import flash.utils.Timer; import flash.text.TextFieldType; import flash.text.TextFieldAutoSize; public cl…
一.Window之间JS通信 在开发项目过程中,由于要引入第三方在线编辑器,所以需要另外一个窗口(window),而且要求打开的window要与原来的窗口进行js通信,那么如何实现呢? 1.在原窗口创建新打开window的一个对象: var new_window; var url = 'http:://second.com'; new_window = window.open(url, 'new_window'); 新窗口里有一个say()方法: function say() { alert('…
上一篇文章介绍了通过UIWebView实现了OC与JS交互的可能性及实现的原理,并且简单的实现了一个小的示例DEMO,当然也有一部分遗留问题,使用原生实现过程比较繁琐,代码难以维护.这篇文章主要介绍下开源库WebViewJavascriptBridge的实现原理和使用方法,并用此开源库重写之前的示例,同样,本文的示例代码我会在文章后面给出欢迎star 我们在上一篇文章结尾处简要介绍了WebViewJavascriptBridge的实现原理也是基于UIWebView的协议拦截,通过阅读源码发现,中…
js 页面间的通信 看了一下公司原来的代码,原页面ajax post返回一个页面完整的HTML,然后再打开一个新页面并输出ajax返回的所有代码到新页面上,在新页面上以表单提交的形式实现重定向. 任凭我想了半天也没想出来,怎么样不借助node就直接用js生成新页面并输入数据到新页面上以初始化.然后百度,必应搜索(公司电脑安全设置不能用greenshadowFQ,郁闷!),关键词不对,没搜到想要的结果.趁着面试,问了一下考官,关键词是“页面之间的通信”,而且说是有三种方法!这不,折腾了几天,算是小…
使用场景 在开发Chrome插件时, 有一种需求: 要求在WEB页面显示一个浮动窗口(A), 在此窗口中允许用Ajax方式调用另一个服务器上的一个页面(B) B页面上有独立的功能用JS写function来实现 已知条件 窗口A可以利用content-script.js动态生成 窗口A中放置一个按钮, 调用Onclick方法召唤出B页面, 样例代码如下 <button onclick="invokeContentScript('openalertWin()')">test&l…
1.父页面调用iframe中的函数: document.getElementById('myframe').contentWidow.fun1(); 2.在iframe中调用父页面中的函数: window.parent.fun2();//注意不能再文件模式下运行,要在网站发布后才可使用.…