热门标签 | 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");
}


推荐阅读
  • 本文详细介绍了 GWT 中 PopupPanel 类的 onKeyDownPreview 方法,提供了多个代码示例及应用场景,帮助开发者更好地理解和使用该方法。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 本文将介绍如何使用 Go 语言编写和运行一个简单的“Hello, World!”程序。内容涵盖开发环境配置、代码结构解析及执行步骤。 ... [详细]
  • This guide provides a comprehensive step-by-step approach to successfully installing the MongoDB PHP driver on XAMPP for macOS, ensuring a smooth and efficient setup process. ... [详细]
  • 探讨如何高效使用FastJSON进行JSON数据解析,特别是从复杂嵌套结构中提取特定字段值的方法。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 本文介绍如何利用动态规划算法解决经典的0-1背包问题。通过具体实例和代码实现,详细解释了在给定容量的背包中选择若干物品以最大化总价值的过程。 ... [详细]
  • 本文介绍了在使用Visual Studio 2015进行项目开发时,遇到类向导弹出“异常来自 HRESULT:0x8CE0000B”错误的解决方案。通过具体步骤和实践经验,帮助开发者快速排查并解决问题。 ... [详细]
  • 本文基于刘洪波老师的《英文词根词缀精讲》,深入探讨了多个重要词根词缀的起源及其相关词汇,帮助读者更好地理解和记忆英语单词。 ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • 数据管理权威指南:《DAMA-DMBOK2 数据管理知识体系》
    本书提供了全面的数据管理职能、术语和最佳实践方法的标准行业解释,构建了数据管理的总体框架,为数据管理的发展奠定了坚实的理论基础。适合各类数据管理专业人士和相关领域的从业人员。 ... [详细]
  • 题目描述:给定n个半开区间[a, b),要求使用两个互不重叠的记录器,求最多可以记录多少个区间。解决方案采用贪心算法,通过排序和遍历实现最优解。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 深入理解Java中的volatile、内存屏障与CPU指令
    本文详细探讨了Java中volatile关键字的作用机制,以及其与内存屏障和CPU指令之间的关系。通过具体示例和专业解析,帮助读者更好地理解多线程编程中的同步问题。 ... [详细]
  • 如何在PHPcms网站中添加广告
    本文详细介绍了在PHPcms网站后台添加广告的方法,涵盖多种常见的广告形式,如百度广告和Google广告,并提供了相关设置的步骤。同时,文章还探讨了优化网站流量的SEO策略。 ... [详细]
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社区 版权所有