热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Jqueryeasyui模拟浏览器前进后退查看历史浏览网页

Jqueryeasyui模拟浏览器前进后退查看历史浏览网页

/**
* 打开窗口的简化
*/
function easyuiWinNew(settings, level, tools) {
if (!level) {
level = 1;
}
var defaultSetting = {
title : "new Title",
modal : true,
resizable : false,
minimizable : false,
maximizable : false,
collapsible : false,
shadow : false,
closed : true,
width : 675,
height : 560,
onClose : function() {
var optiOns= $("#easyuiwin" + level).window("options");
$("#easyuiwin" + level).window("destroy", true);
if (!$("#easyuiwin" + level).get(0)) {
$("

").appendTo("body")
.window(options);
} else {
$("#easyuiwin" + level).window(options);
}
// 将相应的保存的信息删除
}
};
if (tools) {
$.extend(defaultSetting, {
tools : [{
iconCls : "icon-goback",
handler : function() {
easyuiWinBack(level);
}
}, {
iconCls : "icon-goforward",
handler : function() {
easyuiWinPre(level);
}
}, {
iconCls : "icon-history",
handler : function(event) {
var his_menu = $("
");
var his_setting = $("#easyuiwin" + level)
.data("easyuiWinPageSetting");
for (var i = 0; i his_menu
.append("
"
+ his_setting[i].title
+ "
");
}

// 展示历史记录
his_menu.menu({}).menu("show", {
left : event.pageX,
top : event.pageY
});
}
}]
});
}
$.extend(defaultSetting, settings);
$("#easyuiwin" + level).remove();
$("body").append("

");
$("#easyuiwin" + level).window(defaultSetting).window("open");
// 存储第一次打开窗口的信息
$("#easyuiwin" + level).data("easyuiWinPageSetting",
new Array($.extend(settings, {
page : 1
})));
// 设置当前页
$("#easyuiwin" + level).data("easyuiWinCurrentPage", 1);
}
function easyui_win_his_menu_click(title, href, level) {
easyuiWinChange({
title : title,
href : href
}, level);
}
/**
* 跳转到某个页面,其中setting是
*/
function easyuiWinGo(setting, level) {
if (!level) {
level = 1;
}
easyuiWinChange(setting, level);
// 存储页面跳转信息
// 设置当前页
var currentPage = $("#easyuiwin" + level).data("easyuiWinCurrentPage") + 1;
$("#easyuiwin" + level).data("easyuiWinCurrentPage", currentPage);
// 保存配置
var beforeArray = $("#easyuiwin" + level).data("easyuiWinPageSetting");
beforeArray.push($.extend(setting, {
page : currentPage
}));
$("#easyuiwin" + level).data("easyuiWinPageSetting", beforeArray);
}

// 窗口关闭
function easyuiWinClose(level) {
if (!level) {
level = 1;
}
$("#easyuiwin" + level).window("close");
}

// 后退
function easyuiWinBack(level) {
var currentPgae = $("#easyuiwin" + level).data("easyuiWinCurrentPage");
var beforeArray = $("#easyuiwin" + level).data("easyuiWinPageSetting");
// alert("currentPgae:"+currentPgae+"
// beforeArray-length:"+beforeArray.length);
if ((currentPgae - 1) >= 1) {
for (var i = 0; i var beforePage = beforeArray[i];
if (beforePage.page == (currentPgae - 1)) {
// 设置当前页
$("#easyuiwin" + level).data("easyuiWinCurrentPage",
(currentPgae - 1));
// 页面跳转
easyuiWinChange(beforePage, level);
}
}
}
}
// 前进
function easyuiWinPre(level) {
var currentPgae = $("#easyuiwin" + level).data("easyuiWinCurrentPage");
var beforeArray = $("#easyuiwin" + level).data("easyuiWinPageSetting");
// alert("currentPgae:"+currentPgae+"
// beforeArray-length:"+beforeArray.length);
if ((currentPgae + 1) <= beforeArray.length) {
for (var i = 0; i var beforePage = beforeArray[i];
if (beforePage.page == (currentPgae + 1)) {
// 设置当前页
$("#easyuiwin" + level).data("easyuiWinCurrentPage",
(currentPgae + 1));
// 页面跳转
easyuiWinChange(beforePage, level);
}
}
}
}
/**
* 根据配置执行页面跳转 纯粹的执行页面的跳转
*/
function easyuiWinChange(setting, level) {
// 改变标题
if (setting.title) {
$("#easyuiwin" + level).window("setTitle", setting.title);
}
// 改变大小
if (setting.width && setting.height) {
$("#easyuiwin" + level).window("resize", {
width : setting.width,
height : setting.height
});
}
// 改变页面url
if (setting.href) {
$("#easyuiwin" + level).window("refresh", setting.href);
}
}

function easyuiWinRefresh(level) {
$("#easyuiwin" + level).window("refresh");
}


推荐阅读
  • 深入解析Serverless架构模式
    本文将详细介绍Serverless架构模式的核心概念、工作原理及其优势。通过对比传统架构,探讨Serverless如何简化应用开发与运维流程,并介绍当前主流的Serverless平台。 ... [详细]
  • 在 Android 开发中,通过 Intent 启动 Activity 或 Service 时,可以使用 putExtra 方法传递数据。接收方可以通过 getIntent().getExtras() 获取这些数据。本文将介绍如何使用 RoboGuice 框架简化这一过程,特别是 @InjectExtra 注解的使用。 ... [详细]
  • 探讨在PHP开发中,如何选择使用Cookie或数据库来优化网站性能,特别是在处理用户保存的搜索结果时。 ... [详细]
  • 经常账户逆差对经济的影响:资产价格波动视角
    近年来,中国的经常账户余额无论是绝对规模还是占GDP的比率均显著下降。2018年第一季度,中国首次在十余年来出现经常账户逆差。本文探讨了这种变化对国内资产价格波动的具体影响,并结合全球主要经济体的经验数据进行了分析。 ... [详细]
  • 本文详细介绍了如何在Kendo UI for jQuery的数据管理组件中,将行标题字段呈现为锚点(即可点击链接),帮助开发人员更高效地实现这一功能。通过具体的代码示例和解释,即使是新手也能轻松掌握。 ... [详细]
  • 版本控制工具——Git常用操作(下)
    本文由云+社区发表作者:工程师小熊摘要:上一集我们一起入门学习了git的基本概念和git常用的操作,包括提交和同步代码、使用分支、出现代码冲突的解决办法、紧急保存现场和恢复 ... [详细]
  • 深入解析ESFramework中的AgileTcp组件
    本文详细介绍了ESFramework框架中AgileTcp组件的设计与实现。AgileTcp是ESFramework提供的ITcp接口的高效实现,旨在优化TCP通信的性能和结构清晰度。 ... [详细]
  • 本文介绍如何使用RFC 5545重复规则在C#中实现类似于Google日历中的事件安排功能,特别是针对每月特定工作日的事件。我们将探讨如何精确设置这些规则以确保事件按照预期频率和日期触发。 ... [详细]
  • 本文详细介绍了钩子(hook)的概念、原理及其在编程中的实际应用。通过对比回调函数和注册函数,解释了钩子的工作机制,并提供了具体的Python示例代码,帮助读者更好地理解和掌握这一重要编程工具。 ... [详细]
  • 本文介绍了如何在React和React Native项目中使用JavaScript进行日期格式化,提供了获取近7天、近半年及近一年日期的具体实现方法。 ... [详细]
  • 本文探讨了在Django项目中,如何在对象详情页面添加前后导航链接,以提升用户体验。文章详细描述了遇到的问题及解决方案。 ... [详细]
  • 2012年7月30日,语言岛团队宣布其智能记单词软件V0.3.4.554版本正式开源。该版本不仅支持跨平台使用,还引入了多项创新功能,旨在帮助用户更高效地记忆单词。 ... [详细]
  • vivo Y5s配备了联发科Helio P65八核处理器,这款处理器采用12纳米工艺制造,具备两颗高性能Cortex-A75核心和六颗高效能Cortex-A55核心。此外,它还集成了先进的图像处理单元和语音唤醒功能,为用户提供卓越的性能体验。 ... [详细]
  • 在编译BSP包过程中,遇到了一个与 'gets' 函数相关的编译错误。该问题通常发生在较新的编译环境中,由于 'gets' 函数已被弃用并视为安全漏洞。本文将详细介绍如何通过修改源代码和配置文件来解决这一问题。 ... [详细]
  • 深入解析 Android IPC 中的 Messenger 机制
    本文详细介绍了 Android 中基于消息传递的进程间通信(IPC)机制——Messenger。通过实例和源码分析,帮助开发者更好地理解和使用这一高效的通信工具。 ... [详细]
author-avatar
资深化妆师May
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有