• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >JSP > window.top[_CACHE]实现多个jsp页面共享一个js对象

window.top[_CACHE]实现多个jsp页面共享一个js对象

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了jsp cache,jsp no cache,cache,cachecache2015秋冬,cachecache旗舰店等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

今天,在项目中遇到一个问题,两个js页面要共享一个就js对象。js全局变量和静态变量都不行,其他苦逼的小农们就不要去强求了。而LZ又不想用cookie来存放,一是不安全,二个人喜好。最后发现一种超级方法来解决这个困扰,那就是用window.top['_CACHE']来存放这个变量,即可实现,不同Jsp页面直接的对象共享。

var share = { 

/** 
* 跨框架数据共享接口 
* @param {String} 存储的数据名 
* @param {Any} 将要存储的任意数据(无此项则返回被查询的数据) 
*/ 
data: function (name, value) { 
var top = window.top, 
cache = top['_CACHE'] || {}; 
top['_CACHE'] = cache; 

return value !== undefined ? cache[name] = value : cache[name]; 
}, 

/** 
* 数据共享删除接口 
* @param {String} 删除的数据名 
*/ 
removeData: function (name) { 
var cache = window.top['_CACHE']; 
if (cache && cache[name]) delete cache[name]; 
} 
};
</div>

下面贴上LZ的代码:

LZ的一个jsp页面为A.jsp,在A.jsp中点击一个按钮打开另一个B.jsp页面。LZ的思路如下:

在A.jsp打开B.jsp的事件中,写入如下代码:

window.top['_CACHE'] = chatFrdList; 
window.top['_CACHE'][frdUserId] = frdUserId;
</div>

其中,chatFrdList定义为var chatFrdList = new Object();

frdUserId为一个用户的id。

那么,在B.jsp的一个事件中,就可以执行下面的操作:

<pre name="code" class="javascript" style="margin-top:0px; margin-bottom:0px; padding:0px; font-family:'courier new',courier,monospace">var e = document.getElementsByName("chatWindow");</pre><pre name="code" class="javascript" style="margin-top:0px; margin-bottom:0px; padding:0px; font-family:'courier new',courier,monospace">var keyId = e[0].id; 
delete window.top['_CACHE'][keyId];// 关闭与该好友的聊天窗口时,将其从聊天表中移除</pre>
</div>

然后,LZ就可以在A.jsp的其他事件中操作window.top['_CACHE']了,这样便能实现多个JSP页面直接的js对象共享了。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • window.top[_CACHE]实现多个jsp页面共享一个js对象
  • JSP页面缓存cache技术--浏览器缓存介绍及实现方法

相关文章

  • 2017-05-11jsp实现将动态网页转换成静态页面的方法
  • 2017-05-11jsp 不支持EL表达式,解决办法
  • 2017-05-11用JS实现购物网站商品放大镜效果
  • 2017-05-11关于request.getHeader("Referer")的问题探讨
  • 2017-05-11response.getWriter().write()向前台打印信息乱码问题解决
  • 2017-05-11jsp中页面之间的跳转forward与sendRedirect的区别
  • 2017-05-11详解JSP中的语句对象Statement操作MySQL的使用实例
  • 2017-05-11JSP的login程序代码
  • 2017-05-11jsp自定义标签用法实例详解
  • 2017-05-11struts2的select标签用法实例分析

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • JSP由浅入深(11)—— 标记库
    • jsp页面 列表 展示 ajax异步实现方法
    • JSP分页显示的实例代码
    • servlet中session简介和使用例子
    • java tapestry5 布局 参数的处理
    • JSP入门之HelloWorld程序实例
    • JS无缝滚动显示和JSP中marquee标签滚动显示
    • jsp 文件上传浏览,支持ie6,ie7,ie8
    • JSP验证码动态生成方法
    • EJB 3.0开发指南之多表映射

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有