$(window).bind('statechange',function(){
var State = History.getState(),
url = State.url;
});
在以下函数中,url返回当前 URL。我正在寻找的是在该函数中获取以前的URL,例如,如果我在/cars/ferrari
并转到/cars/ford
,url
将返回{{ 1}},但我希望得到cars/ford
。
如何在/cars/ferrari
事件中获取以前的网址?
答案 0 :(得分:11)
$(window).bind('statechange',function(){
// Prepare Variables
var State = History.getState(),
url = State.url,
states = History.savedStates,
prevUrlIndex = states.length - 2,
prevUrl = states[prevUrlIndex].hash;
});
这似乎可以解决问题! prevUrl为我提供了所需的URL。
答案 1 :(得分:1)
我所要做的就是将URL推送到状态对象,以便您可以再次将其恢复。
所以当你使用pushState:
时history.pushState(
{'previous_url': document.location.href},
document.title,
"?some_query_string"
);
然后,当你获得状态时,它将具有previous_url:)
答案 2 :(得分:-1)
试试这个:
alert(document.referrer);
注意:
如果用户导航到该页面,则该值为空字符串 直接(不是通过链接,但是,例如,通过书签)。以来 此属性仅返回一个字符串,它不会为您提供DOM访问权限 到推荐页面。