2015-04-05 243 views
0

我對JavaScript很陌生。我試圖讓一個HTML按鈕做的兩件事情(同時)點擊時:輸入類型按鈕返回歷史記錄返回頁首

1)返回,同時保留用戶輸入(有上一個頁面中的表單)。

2)轉到上一頁的頂部。

以下是我有:

<input type="button" value="Go Back" onclick="javascript:history.go(-1); location.href='#'" /> 

UPDATE:

<script type="text/javascript"> 
function goBack() { 
    window.history.go(-1); 
    window.location.href = "#"; 
} 
</script> 

<input type="button" value="Go Back" onclick="goBack()"> 

雖然在單擊時按鈕不會做任何事情。

回答

0

作爲替代方案,我只是放在一個前「返回頂部」按鈕vious頁面以確保它適用於所有瀏覽器。

1

這是代碼做什麼:

1)返回,同時保留用戶輸入(有上一個頁面中的表單)。

2)進入當前頁面的頂部。

所以,第一個動作被第二個動作取消。

你需要什麼是做在目標頁面中的上頁轉到頂部在頁面加載時的第二個步驟,即代碼。

在當前頁面,你會剛:

<input type="button" value="Go Back" onclick="javascript:history.go(-1);" /> 

在前面的頁面,你就會有一個腳本:

window.onload = function(){ 
    window.scrollTo(0, 0); 
}; 

(該腳本會自然也跑當頁面最初加載(這是之前的「前一頁」),但由於隨後的頁面已經在頂部,這不是一個問題。)

+0

啊,是的,「前」頁面已經成爲第2步:在「當前」頁面是否有可能只是呼籲,做了兩件事情已經是'onclick'屬性的功能? – silver 2015-04-05 09:40:01

+1

@ohtph:問題是上一頁還沒有成爲當前頁面。當代碼運行時,當前頁面仍然是當前頁面。你不能在當前頁面上進行下一頁將要加載的頁面(這是本例中的上一頁),你必須在頁面加載完成後才能做到這一點。 – Guffa 2015-04-05 09:50:27

+0

你是對的,我試了一個函數,結果仍然是一樣的(見更新)。您可以通過代碼示例更新您的答案嗎?這將非常感激。 :) – silver 2015-04-05 09:59:14