js中的referrer返回上一页使用介绍


Posted in Javascript onSeptember 26, 2013

js完整代码:

<script language="javascript"> 
var refer=document.referrer; 
document.getElementById('backurl').value=refer; 
</script>

“HTTP_REFERER”

链接到当前页面的前一页面的 URL 地址。不是所有的用户代理(浏览器)都会设置这个变量,而且有的还可以手工修改 HTTP_REFERER。因此,这个变量不总是真实正确的。

注意 document.referrer; 和“HTTP_REFERER” 中间差一个字母,却是不同的概念的东东,请注意使用

js中的referrer使用,返回上一页

在js中写上location.href = document.referrer;就可以实现跳转到上一个页面了,让用户觉得体验很好

但是在IE中referrer就没那么尽人意了啊,IE会清空referrer

众所周知,我们web开发人员痛恨IE浏览器,因为IE不支持标准,标准外的默认行为又和其他浏览器经常不一致:
在IE中用javascript做跳转,比如用window.location.href = “http://www.google.com”; google无法取到浏览器请求的HTTP referrer,因为IE清空了document.referrer

而其他主流浏览器Firefox和Chrome都会保留referrer,这意味着IE又要享受“部长级”特殊待遇了:

if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ 
var referLink = document.createElement('a'); 
referLink.href = url; 
document.body.appendChild(referLink); 
referLink.click(); 
}else { 
location.href = url; 
}

这样的原理就是给IE浏览器的页面偷偷加了个链接,然后自动点这个链接,于是referrer就能保留了。

所以我们的根据不同浏览器的不同情况,必须的考虑完整,让代码变得强壮。

Javascript 相关文章推荐
一段实时更新的时间代码
Jul 07 Javascript
jQuery 使用手册(六)
Sep 23 Javascript
基于jquery循环map功能的代码
Feb 26 Javascript
JavaScript作用域链使用介绍
Aug 29 Javascript
JavaScript和CSS交互的方法汇总
Dec 02 Javascript
js使用split函数按照多个字符对字符串进行分割的方法
Mar 20 Javascript
Vue.js鼠标悬浮更换图片功能
May 17 Javascript
Vue组件化通讯的实例代码
Jun 23 Javascript
解决jquery的ajax调取后端数据成功却渲染失败的问题
Aug 08 jQuery
JS实现倒计时图文效果
Nov 17 Javascript
vue中将html字符串转换成html后遇到的问题小结
Dec 10 Javascript
vue实现抽屉弹窗效果
Nov 15 Javascript
JavaScript中的运算符种类及其规则介绍
Sep 26 #Javascript
JQuery页面图片切换和新闻列表滚动效果的具体实现
Sep 26 #Javascript
Jquery实现图片左右自动滚动示例
Sep 25 #Javascript
jquery实现加载等待效果示例
Sep 25 #Javascript
js的onload事件及初始化按钮事件示例代码
Sep 25 #Javascript
jquery实现table鼠标经过变色代码
Sep 25 #Javascript
js跨浏览器实现将字符串转化为xml对象的方法
Sep 25 #Javascript
You might like
生成静态页面的php函数,php爱好者站推荐
2007/03/19 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
2014/09/29 PHP
在Mac OS上自行编译安装Apache服务器和PHP解释器
2015/12/24 PHP
Laravel 5.3 学习笔记之 配置
2016/08/28 PHP
微信公众平台开发教程⑤ 微信扫码支付模式介绍
2019/04/10 PHP
js更优雅的兼容
2010/08/12 Javascript
JS cookie中文乱码解决方法
2014/01/28 Javascript
鼠标移到图片上变大显示而不是放大镜效果
2014/06/15 Javascript
jQuery打印指定区域Html页面并自动分页
2014/07/04 Javascript
浅谈键盘上回车按钮的js触发事件
2017/02/13 Javascript
xmlplus组件设计系列之选项卡(Tabbar)(5)
2017/05/03 Javascript
node.js 发布订阅模式的实例
2017/09/10 Javascript
js提取中文拼音首字母的封装工具类
2018/03/12 Javascript
微信小程序左滑动显示菜单功能的实现
2018/06/14 Javascript
JavaScript函数式编程(Functional Programming)高阶函数(Higher order functions)用法分析
2019/05/22 Javascript
vue多页面项目中路由使用history模式的方法
2019/09/23 Javascript
浅谈layui里的上传控件问题
2019/09/26 Javascript
extjs4图表绘制之折线图实现方法分析
2020/03/06 Javascript
js实现浏览器打印功能的示例代码
2020/07/15 Javascript
python获得图片base64编码示例
2014/01/16 Python
Python在Console下显示文本进度条的方法
2016/02/14 Python
Python中的取模运算方法
2018/11/10 Python
pycharm 实现显示project 选项卡的方法
2019/01/17 Python
python实现批量注册网站用户的示例
2019/02/22 Python
PythonWeb项目Django部署在Ubuntu18.04腾讯云主机上
2019/04/01 Python
如何基于python实现归一化处理
2020/01/20 Python
Python字典dict常用方法函数实例
2020/11/09 Python
HTML5中的拖放实现详解
2017/08/23 HTML / CSS
Nobody Denim官网:购买高级女士牛仔裤
2021/03/15 全球购物
文员自我评价怎么写
2013/09/19 职场文书
最新计算机专业自荐信
2013/10/16 职场文书
三八节标语
2014/06/27 职场文书
党员学习中国梦心得体会
2016/01/05 职场文书
《家庭教育》读后感3篇
2019/12/18 职场文书
mybatis 获取无数据的字段不显示的问题
2021/07/15 Java/Android
Java对文件的读写操作方法
2022/04/29 Java/Android