javascript实现的iframe数据共享接口

javascript实现的iframe数据共享接口:
在iframe与父窗口或者与子窗口传递数据是一个麻烦的事情,如果我们能够写一个一劳永逸的接口那就再方便不过了,下面就来简答介绍一下如何实现此功能。原理就是将数据缓存早window.top这个窗口,这样无论子窗口父窗口的层次如何变化,数据总是存在不会变化的。
代码如下:

var share={
  data:function(name,value){
    var top=window.top,
    cache=top[‘_CACHE‘]||{};
    top[‘_CACHE‘]=cache;
    return value?cache[name]=value:cache[name];
  },
  removeData:function(name){
    var cache=window.top[‘_CACHE‘];
    if(cache&&cache[name])
    {
      delete cache[name];
    }
  }
};
share.data(‘mayi‘,‘http://www.softwhy.com‘);

上面的代码实现了我们的要求,代码比较简单,大家可以自行分析一下,如有任何问题可以跟帖留言。

原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=9141

更多内容可以参阅:http://www.softwhy.com/javascript/

时间: 2024-10-09 23:50:59

javascript实现的iframe数据共享接口的相关文章

Jquery取得iframe中元素的几种方法Javascript Jquery获取Iframe的元素、内容或者ID

query取得iframe中元素的几种方法 在iframe子页面获取父页面元素代码如下: $('#objId', parent.document);// 搞定... 在父页面 获取iframe子页面的元素代码如下: $("#objid",document.frames('iframename').document) 显示iframe中body元素的内容. $(document.getElementById('iframeId').contentWindow.document.body)

《Javascript设计模式》笔记二 接口

在Javascript当中模仿接口的方法有三种:注释法,属性检查法和鸭式变形法.三者结合令人满意. 1.注释法 /* interface Composite{ function add(child){}; function remove(child){}; function getChild(index){}; } interface FormItem{ function save(){} } */ //用注释法模仿接口 var Com = function(id,method,action){

通过JavaScript自由切换iframe

我发现我有很大的强迫症,如果看到别人的文章没有最终的效果图,我会毫不犹豫关掉这个页面.真的很炸毛这种,让我有很不舒服的体验:所以纵使网上有类似的了,我还是写一篇给那些跟我有同样症状的人阅读. 首先来学习一下what is iframe: 其实说白了就是在一个网页里再加载一个网页罢了.你可以这样44: 代码如下: <html> <iframe src='http://www.baidu.com'> </html> 单纯这样子用是比较少的,常用的是在切换iframe等操作.

javascript动态改变iframe的src

页面中需要动态的改变iframe的地址,方法有: 1. window.frames["chartFrame"].document.location = "<%=basePath %>/rest/chart/${id}-" + newValue; 2. document.getElementById("chartFrame").src = "<%=basePath %>/rest/chart/${id}-"

JavaScript设计模式之----接口的实现

1.接口 (1)什么是接口? 接口是提供了一种用以说明一个对象应该具有哪些方法的手段.尽管它可以表明这些方法的语义,但它并不规定这些方法应该如何实现.例如,如果一个接口包含有一个名为setName的方法,那么你有理由认为这个方法的实现应该具有一个字符串参数,并且会把这个参数赋给一个name变量.有了这个工具,你就能按对象提供的特性对它们进行分组.例如,即使一批对象彼此存在着极大的差异,只要它们都实现了Comparable接口,那么在object.compare(anotherObject)方法中

javascript调用ActiveX接口失败的解决方案及使用心得

前段时间公司做了个比较大的项目,需要用到ocx控件,我厂大部分项目都采用C#.net,而winform程序条用ocx控件接口是相对简单的,但是javascript调用ocx接口,却和winform的用法有些不同,其实真捉摸下,也就能发现:差别不大. 笔者此次主要阐述在项目中用javascript调用ocx控件接口,也就是activeX控件时所遇到的问题及其解决方案.winform用法不在此篇中阐述. 调用activeX插件前,我们要做一些准备工作,我们介绍两种方案: 1.使用regsvr32 命

调用天气预报接口

方案一: 浏览器由于安全的限制,不允许跨域访问.但是PHP服务器是允许的.我们可以通过使用PHP文件做代理,通过PHP来调用接口. 详细接口分析可参看:http://www.cnblogs.com/wangjingblogs/p/3192953.html 返回JSON格式 PHP代码 <?php //此接口返回json格式 echo file_get_contents('http://www.weather.com.cn/data/cityinfo/101181601.html'); ?> H

UIWebView 中JavaScript 与 Objective-C 通信

iOS7 之前 Objective-C -> JavaScript UIWebView对象有以下方法 - (NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)script 该方法能够执行一段JavaScript字符串, 并返回字符串类型的返回值. 例如: UIWebView *webView = [[UIWebView alloc] init]; // result == @"3" NSString *re

COM接口函数通用Hook方法

本文是我的本科学位论文, 今发表在此, 以示原创之据 第1章 绪论 研究背景 研究意义 相关技术简介 COM概述 COM内存模型描述及C语言和C++语言实现 调用约定 Hook API原理 Windows钩子原理及进程注入 开发及调试环境 第2章 问题抽象及关键技术研究 实验01:通过调试器查看C++类的虚函数表 实验02:通过函数指针调用C++虚函数 实验03:交换两个相同C++类的虚函数表 实验04-1:替换C++虚函数表中的虚函数(__thiscall)地址 实验04-2:替换C++虚函数