window.history 和 DWZ 框架

本文讨论了在使用DWZ框架时遇到的一个问题:页面前进后退导致tab页面布局变化。文章提出了使用window.history.go(1)的方法来解决这个问题,并解释了原因。

DWZ框架的ajax请求返回的一般都是一个HTML片段,整个页面是由一个个HTML片段组成的,可以由TAB切换其内容,但是只有一个body和HEAD,一般head 和 菜单栏是不会动的。

今天遇到一个问题,当一个点击进入一个tab页面时,这个tab页的布局完全和其他页面的tab页面不一致,也就是其菜单栏和head的内容完全改变了。当用户要返回原来的样式时候,用自己写的JS方法把样式还原可以。但是是页面上的一个button。

当用户用浏览器自带的前进后退返回的时候,问题来了,因为浏览器的前进后退是根据浏览历史的缓存来的(暂且这么理解吧)。这个历史是一个数组来储存的。前进就是显示后一个的历史,后退就是前一个的。当然,都是如果list支持的情况下;

浏览器的前进后退会触发页面的 onunload 和 onbeforeunload 事件 在使用event.returnValue("string")就会弹出你想要的警告。

由于正常的浏览器history是一个个完整的页面,前进后退按钮会触发其onunload等事件,但是DWZ这种框架不会,因为你始终在一个页面上进行操作。当然不会触发onunload等事件。前进后退只会显示历史的HTML片段。

那么,在点击后退后 页面样式变形等问题出现了,使用setInterval 判断这个tab的父元素是否显示来判断是否回到原来页面。样式能还原,但是多前进后退几次就要出现问题。

暂时的解决方法,让其history一直在最后就是每次点击后退返回后让其window.history.go(1);要返回前面的页面。

 

转载于:https://www.cnblogs.com/strangerqt/p/4009968.html

DWZ短网址最新官方版,DWZ短网址系统是一款不错的开源网站系统,该系统采用了PHP语言编写而且,也是一款比较好的开源短网址解析软件 DWZ短网址系统,不但可以为用户提供进行网址缩短、网址还原、网址加密等功能,并提供一套管理后台,方便管理员进行管理。喜欢的朋友可以下载研究一下。 说明使用: 1.DWZ适合希望做短网址站的朋友,为网友提供短网址解析 2.DWZ适合有广告源的独立博客主们,为广告链接缩短,同时统计广告效应 3.DWZ适合拥有线下资源,特别是小型独立电商或者网店,进行产品推广,网址缩短的好处就不必说了 4.DWZ适合做淘宝客等类似站点提供独立的短地址压缩服务 安装说明 一、平台需求 1.Windows 平台: IIS/Apache/Nginx + PHP5 + + MySQL4/5 如果在windows环境中使用,建议用WAMPServer等相关服务器集成软件. 2.Linux/Unix 平台 Apache + PHP5 + MySQL4/5 (PHP必须在非安全模式下运行) 建议使用平台:Linux + Apache2.2 + PHP5.2/PHP5.3 + MySQL5.0 3.PHP必须环境或启用的系统函数: GD扩展库 MySQL扩展库 系统函数 —— phpinfo、dir 4.基本目录结构 / ..../install 安装程序目录,安装完后可删除[安装时必须有可写入权限] ..../Admin 后台管理项目(应用) ..../Web 前台显示项目(应用) ..../Public 公共文件夹 ..../Core ThinkPHP框架 ..../index.php 前台项目单一入口文件 ..../admin.php 后台项目单一入口文件 二、程序安装使用 1.下载程序解压到本地目录; 2.删除Admin/runtime 这个文件夹! 3.上传程序目录到网站根目录 3.运行http://www.yourname.com/Install/index.php(yourname表示你的域名),按照安装提速说明进行程序安装
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值