JS高手呢,获取历史网址

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS高手呢,获取历史网址相关的知识,希望对你有一定的参考价值。

大家好:
我知道使用history.go(-2)可以返回到当前倒数第二个页面,
那么,我不想返回到倒数第二个页面,我只想获得倒数第二个页面的url地址如1.html内容是
<a href="2.html">浏览第二个页面</a>
2.html中
<a href="3.html">浏览第三个页面</a>
3.html
在这个里面要获得1.html的网址怎么获得?
获得2.html的网址是可知道怎么获得的,就是"1.html"怎么获得?

你的问题涉及到 Same Origin Policy(同源策略),这是一个关系到隐私和安全性的问题。任何浏览器都不会给你机会让你访问 **异域** 历史网址。

但是,如果这三个页面在同一域名下,你可以使用 javascript 的 document.cookie 来记录每次访问的网址。

我写的例子需要4个文件,url_history.js,html1.html,html2.html,html3.html(三个 html 文件内容相同),代码写在空间(hi.baidu.com/keneks/item/50699e21f9300d0c72863e4d)

复制粘贴,将 url_history.js 和其它三个 html 文件放在一起,访问任何一个页面,点击任何链接,上面会自动显示曾经访问过的页面。

历史网址以 array 形式保存在 url_history 变量中,所以 url_history[0] 为上一个,url_history[1] 为上上一个,以此类推。
参考技术A 用history获得不了url,只能获得以前浏览过的的url个数,因为安全方面的原因,url历史在客户端被浏览器屏蔽了,只能暴露给使用浏览器的"人",而不能被js程序自动识别,同样的道理,浏览器的历史文件夹也是不能被js访问的。想获得以前的url,只能在服务器端脚本实现,或者使用cookie技术,也就是说,通过程序自动获得的url历史只能是同一域名下的网址,不能跳转域名。 参考技术B 呵呵!这个问题问的好! 问题关键是中间界面,2.html 两种情况:1、2.html非你网站界面,你将无法用JS在3.html获取1.html2、2.html是你网站界面,在2.html获取1.html,并存储至cookie,3.html通过捞取cookie获得。

以上是关于JS高手呢,获取历史网址的主要内容,如果未能解决你的问题,请参考以下文章

[js高手之路] html5 canvas动画教程 - 实时获取鼠标的当前坐标

调用JS代码,传过去的参数为啥变成了[OBJECT],而不是值类型呢?怎么解决啊,求高手!!!

php高手请进:正则提取超链接中的网址和标题,如果兼顾有双引号和单引号或没有引号的超链接?

js获取s:set值,来高手求解

求JS高手!DIV上面的边到鼠标的距离的问题!!!

如何批量修改.html文件里面的内容?能用批处理吗?或者有啥方法呢?请求高手帮帮忙!