2012-05-11 93 views
0

我想要JavaScript或JQuery(或實際上的任何插件)來強制瀏覽器在單擊後退按鈕時加載特定頁面。回退按鈕轉到其他頁面

基本上在瀏覽器的歷史記錄中插入一個頁面。

我在下面找到了一種方法,但看起來很長。我錯過了什麼嗎?

<html> 
<head> 
    <title>Back button test</title> 
</head> 
<body> 
    <script type="text/javascript"> 
     window.history.pushState('other.html', 'Other Page', 'other.html'); 
     window.history.pushState('initial.html', 'Initial Page', 'initial.html'); 
    </script> 

    Initial page <br /> 

    <script type="text/javascript"> 

     window.addEventListener("popstate", function(e) { 
      if(document.URL.indexOf("other.html") >= 0){ 
       document.location.href = document.location; 
      } 
     }); 

    </script> 
</body> 
</html> 

回答

1

一般來說,您不能修改瀏覽器的歷史記錄,這是一個主要的安全功能。如果你找到了解決方法,那可能適合你,但請記住它可能會讓人感到不安。我知道如果我在一個劫持後退按鈕的網站上,我不會回來。相反,請使用更好的UX來提供用戶鏈接。

+0

啊好的,感謝您的評論。信息伴侶+1)這不是一個面向公衆的網站,但這將解釋爲什麼它很難做到。嗯... –

+0

感謝您的答案MaddHacker。我得到了很多倒票,但沒有太多的信息,爲什麼不應該做,或任何建議的替代品...有點令人失望,但非常感謝幫助:) –

+2

沒問題,你可能會downvoted因爲它被認爲是一個相當可疑的做法。雖然我能理解你的挫敗感,但祝你好運! – MaddHacker