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 相关文章推荐
jQuery中DOM操作实例分析
Jan 23 Javascript
AngularJS基础 ng-hide 指令用法及示例代码
Aug 01 Javascript
bootstrap 下拉多选框进行多选传值问题代码分析
Feb 14 Javascript
node文件上传功能简易实现代码
Jun 16 Javascript
JavaScript 中的12种循环遍历方法【总结】
May 31 Javascript
详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)
Oct 26 Javascript
JS实现随机生成10个手机号的方法示例
Dec 07 Javascript
JavaScript设计模式之命令模式实例分析
Jan 16 Javascript
js中async函数结合promise的小案例浅析
Apr 14 Javascript
JavaScript本地储存:localStorage、sessionStorage、cookie的使用
Oct 13 Javascript
vue中使用腾讯云Im的示例
Oct 23 Javascript
ES6学习教程之Promise用法详解
Nov 22 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脚本守护进程原理与实现方法详解
2017/07/20 PHP
PHP中将一个字符串部分字符用星号*替代隐藏的实现代码
2019/09/08 PHP
JavaScript 直接操作本地文件的实现代码
2009/12/01 Javascript
javascript 不间断的图片滚动并可点击
2010/01/15 Javascript
cookie在javascript中的使用技巧以及隐私在服务器端的设置
2012/12/03 Javascript
jquery实现超简洁的TAB选项卡效果代码
2015/08/28 Javascript
每天一篇javascript学习小结(面向对象编程)
2015/11/20 Javascript
JS扩展类,克隆对象与混合类实例分析
2016/11/26 Javascript
基于vue的下拉刷新指令和滚动刷新指令
2016/12/23 Javascript
Angular.JS中的指令引用template与指令当做属性详解
2017/03/30 Javascript
angularjs中ng-bind-html的用法总结
2017/05/23 Javascript
解决bootstrap中使用modal加载kindeditor时弹出层文本框不能输入的问题
2017/06/05 Javascript
select自定义小三角样式代码(实用总结)
2017/08/18 Javascript
JS实现标签滚动切换效果
2017/12/25 Javascript
vue几个常用跨域处理方式介绍
2018/02/07 Javascript
详解Vue基于 Nuxt.js 实现服务端渲染(SSR)
2018/04/05 Javascript
详解基于Vue-cli搭建的项目如何和后台交互
2018/06/29 Javascript
Python中的魔法方法深入理解
2014/07/09 Python
Python机器学习之决策树算法实例详解
2017/12/06 Python
Python人脸识别初探
2017/12/21 Python
django中forms组件的使用与注意
2019/07/08 Python
Python网络爬虫信息提取mooc代码实例
2020/03/06 Python
浅谈python 中的 type(), dtype(), astype()的区别
2020/04/09 Python
PyCharm2019 安装和配置教程详解附激活码
2020/07/31 Python
python利用tkinter实现图片格式转换的示例
2020/09/28 Python
python线程池 ThreadPoolExecutor 的用法示例
2020/10/10 Python
商场端午节活动方案
2014/01/29 职场文书
软件部经理岗位职责范本
2014/02/25 职场文书
三年级班级文化建设方案
2014/05/04 职场文书
社区优秀志愿者先进事迹
2014/05/09 职场文书
马丁路德金演讲稿
2014/05/19 职场文书
淮阳太昊陵导游词
2015/02/10 职场文书
全国爱眼日活动总结
2015/02/27 职场文书
2015年七夕情人节活动方案
2015/05/06 职场文书
2015年学校办公室工作总结
2015/05/26 职场文书
如何用Python搭建gRPC服务
2021/06/30 Python