2012-05-17 20 views
4

我面臨的一個問題的部分頁面。我有一個網頁,我使用back按鈕定位鏈接,並使用的代碼是ONCLICK="history.go(-1)"。同一頁面有許多錨鏈接和相關的部分。History.go(-1)不工作的具有指向同一頁面

當我去含按鈕頁面,然後點擊立即按鈕,然後按鈕正常工作。

如果我去含按鈕頁面,然後點擊一個指向同一個頁面中的部分錨鏈接,然後點擊該按鈕,然後將它從來就沒有到前一個網頁,而不是去節的網址。

+1

這是它應該如何工作。錨鏈接是歷史的有效部分。 – kapa

+0

謝謝.. bazmegakapa。如何實現以上。任何想法 ? – sridhar

+1

考慮使用location.replace()然後爲您的錨鏈接。 –

回答

0

也許你可以嘗試計數一個「節」鏈接被點擊了多少次

也許像(使用jQuery,但也許有些善良的人會去改變這個代碼不錯的普通的JavaScript ):

var count = 0; 
var historyValue = -1; 
$(".sectionlinks").click(function() { 
    ++count; 
    window.historyValue = -(count + 1); 
})​ 

並且您所有的部分鏈接都有sectionlinks類。

然後,你可以做你的背部鏈接:

<a onclick="history.go(historyValue)">My Back Link</a> 

的演示中看到這個小提琴:http://jsfiddle.net/RRcyF/2/

2

通過新的歷史API,你可以manipulate the browser history

History.js可以幫助你在一個跨瀏覽器的方式實現這一目標。

我已經快速創建了一個small fiddle,說明它的工作原理,並使用jQuery進行事件處理(這不是生產代碼,只是一個演示,適用於我的Chrome)。

$('.anchor').click(function() { 
    history.replaceState({}, '', this.href); 
}); 
+0

謝謝bazmegakapa。我如何操作同一頁面中的錨點鏈接點擊次數。你能提出一個想法嗎? – sridhar

+0

@sridhar添加了一個小演示。 – kapa

1

如果是這樣你可以使用JavaScript通過簡單地使用這一行來解決這個問題。

。利用下面的history.go() JavaScript函數:

<a href="javascript:window.history.go(-1);">Go back</a> 
+0

-1使用'javascript:'url而不是'onclick' – ThiefMaster

相關問題