我有一個網站使用jQuery Address plugin from Asual進行導航。IE6和IE7後退/前向散列標記導航問題
我遇到的問題是,當用戶使用後退/前進按鈕時,使用IE6和IE7時,網站會在意外頁面結束。
下面是我現在正在做的事情的簡化版本。
$.address.init(function(event) {
defaultPage = "1";
}).change(function(event) {
$("#content").html('<div><img src="/images/activity indicator.gif"></div>')
$("#content").load("./pages/"+names+".html", function(){
var names = $.map(event.pathNames, function(n) {
return n.substr(0, 1).toUpperCase() + n.substr(1);
}).concat(event.parameters.id ? event.parameters.id.split('.') : []);
pageScripts[names]();
});
});
如果我/
頁轉到#/1
,轉到#/2
,然後轉到頁#/3
上,我對頁面#/ 3,與任何沒有問題。當我在頁面#/3
上IE6或IE7(Chrome,FF,IE8,IE9都可以正常工作)中點擊「返回」時,我會一直回到頁面/
。點擊向前移動到頁/#3
。
它從散列標籤跳過歷史記錄。
但是,example from the website在IE6/IE7下正常工作。我無法找到我所做的和它正在做的事情之間的功能差異。
這些不是標籤。 「hashtag」是Twitter命名法。 – BoltClock 2011-03-21 19:04:25
@BoltClock你是對的,它實際上在RFC1738中被稱爲片段/錨點標識符。 - 但是,在JavaScript中,用於監視此事件的事件被稱爲'onhashchange'。所以我覺得這個用法是可以互換的。 – Incognito 2011-03-21 19:07:05