首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

浏览器退后和刷新处理

2013-07-08 
浏览器后退和刷新处理在web开发中经常会使用到一些javascript效果,但是当一个界面同样效果出现多个的时候,

浏览器后退和刷新处理

在web开发中经常会使用到一些javascript效果,但是当一个界面同样效果出现多个的时候,在用户点击IE上的后退或者刷新按钮时,会出现多个效果内容因为缓存原因导致显示的是一样的内容,之前我也遇到过这样的问题,也尝试过使用javascript来监听快捷键或者按键事件的方式来处理,但是后来发现有漏洞,当用户点击IE上的按钮时,这些事件是不起作用的,也就是还说缓存还是存在,问题还是保留着。在经过考虑之后我决定采用cookie的方式来处理避免这样的问题,具体步骤如下:

首先设置cookie,默认在界面加载的时候设置一个值,然后设置好时效时间:

var myDate = new Date();

myDate.setTime(myDate.getTime() + 2000*1);//时效 2s

document.cookie='cookie='+myDate.toLocaleString( )+';expires='+myDate.toGMTString();//设置cookie和时效

然后再界面加载时候每次都去判断下cookie:

var t_cookie=document.cookie.split(';')[0].split('=')[1];//获取cookie

if(t_cookie==undefined)//判断cookie是否失效

{

? ? //失效的处理

? ?window.location.href='index.htm';//我偷懒了。。。

}

通过这样就可以避免了,不管是刷新还是退回,都不会因为缓存导致出现内容混乱了。

注:就在IE下弄过,其他浏览器如果有朋友弄过可以一起交流下

热点排行