在各种浏览器的Javascript测试结果document.referrer

在各种浏览器的Javascript测试结果document.referrer
以前的时间需要通过Javascript获取网页源码,使用方便,并且可以通过使用document.referrer.however获得的,仍然有很多事故发生在实际中的应用。

第一个问题是从HTTPS页面HTTP页面,对document.referrer值是空的。出于安全的考虑,许多网站的重要页面(如淘宝的登录页)将使用HTTPS协议。如果用户没有登录页面(页面的HTTP在页面上单击(B)HTTP页面)的链接,但页面B要求用户登录,然后跳转到登录页面(HTTPS页面),在B完成登录(HTTP页面),那么你会比document.referrer找到B页。也就是说,如果你想恢复用户访问路径根据引荐,如果有HTTP页面和HTTPS页面的路径,然后路径将被打破从HTTPS HTTP。

这个问题的根源是浏览器的安全策略,这似乎并不是一个特别好的Javascript解决方案。迂回的思维方式是使用window.name写当前页面window.name在HTTPS页面的URL,然后阅读它的下一页(HTTP页面)。

除此之外,其他的页面跳了document.referrer正常吗我做了一个搜索发现有人在这里整理了一个清单,但不是很好,例如,它不包括一个不死的IE6。所以你自己动手,安装在虚拟机的浏览器,测试所有的东西(这真是一个体力劳动),并见下表:
操作
IE6
IE7
IE8
IE9
火狐

歌剧
游猎

地址栏中直接输入URL


从书签访问URL


点击链接从网页跳转到页面B(目标= _self)
B.
B.
B.
B.
B.
B.
B.
B.
点击链接从网页跳转到页面B(目标= _blank)
B.
B.
B.
B.
B.
B.
B.
B.
单击页面的超链接,右击并打开新标签页中的页面B。

B.
B.
B.
B.
B.
B.
右键单击页面A的超链接,在新窗口中打开页面B。
B.
B.
B.
B.
B.
B.
B.
将链接拖到地址栏

不能拖
不能拖

将链接拖到标签栏


使用浏览器的前后按钮
B.
B.
B.
B.
B.
B.
B.
B.
js修改location.href
B.
B.
B.
B.
B.
js使用window.open

B.
B.
B.
B.
服务器重定向(302跳转)
定位前的页面
定位前的页面
定位前的页面
定位前的页面
定位前的页面
定位前的页面
定位前的页面
定位前的页面
Meta刷新页面
翻页
翻页
翻页
在桌子上在未来可以正常说引荐引荐,说是空的。

除了伊江之外,其他浏览器是可以在官方网站上下载最新版本。Safari还测试了Windows版本和Mac版本。

也有一些情况下,没有经过测试,例如是否可以保持链接在浏览器中单击闪跳。

上面表中的大多数情况都是预料之中的,但似乎有几点需要注意。

1、在Safari中,右键打开链接失去引荐;

2,在伊江,与location.href window.open修改或打开的页面将失去引荐(IE 9有一个例外,location.href跳绳不失去引荐)。

三.当使用元跳,引荐了IE和Firefox下。

最后,一个简单的结论是:如果你需要通过document.referrer收集页面的访问来源,你最好不要使用JS跳转或打开新的窗口,也不使用元跳。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部