2017-10-15 79 views
0

是否能夠檢查如果最後的瀏覽器歷史記錄mysite.com,然後goBack()其他goHome()檢查最後一個窗口,歷史是從特定URL

比方說

  • facebook.com〜>mysite.com/page〜> myBackBtn充當GOHOMEmysite.com
  • mysite.com/page〜>mysite.com/page2〜> myBackBtn充當GoBack的mysite.com/page
+0

相關 - https://stackoverflow.com/q/13369829/104380 – vsync

+0

相關 - https://stackoverflow.com/q/11556781/104380 – vsync

+0

相關 - https://stackoverflow.com/q/12857601/104380 – vsync

回答

0

您可以使用document.referrer來獲取鏈接到當前頁面的頁面的URL。請注意,這很容易被欺騙。

這將只有如果用戶按照前一頁的鏈接進入當前頁面,則工作。如果他們使用書籤或在URL中鍵入等,referrer將爲空,並且有沒有辦法您可以獲取有關窗口中以前的內容的信息。 (特別是:history對象中沒有任何內容會告訴你。)這只是瀏覽器中不可用的信息。

+0

我做SPA,引用者總是返回空字符串 –

+0

@DonnyGunawan:沒有。如果我按照從Facebook到SPA的鏈接,「document.referrer」將是Facebook的URL。 –

0

您可以嘗試使用document.referrerhistory API的解決方案,但要注意,這是行不通的總是

if (document.referrer === 'my.domain.com') { 
    history.back(); // act as if user clicked the browser back button 
} 
else { 
    window.location.href = 'http://my.domain.com/home'; 
} 

將無法​​在IE瀏覽器和document.referrer並不總是準確的,查看單頁面應用程序

+0

是的,我做SPA,推薦人總是返回空字符串 –