Javascript 检查上次窗口历史记录是否来自某个URL

Javascript 检查上次窗口历史记录是否来自某个URL,javascript,web,Javascript,Web,是否可以检查如果上次浏览器历史记录来自mysite.com,则goBack()否则goHome() 比方说 facebook.com~>mysite.com/page~>myBackBtn充当goHome或mysite.com mysite.com/page~>mysite.com/page2~>myBackBtn充当goBack或mysite.com/page 您可以使用获取链接到当前页面的页面的URL。请注意,这很容易被欺骗 只有当用户通过上一页的链接进入当前页面时,这才起作用。如果他们使

是否可以检查如果上次浏览器历史记录来自mysite.com,则
goBack()
否则
goHome()

比方说

  • facebook.com
    ~>
    mysite.com/page
    ~>myBackBtn充当goHomemysite.com
  • mysite.com/page
    ~>
    mysite.com/page2
    ~>myBackBtn充当goBackmysite.com/page
您可以使用获取链接到当前页面的页面的URL。请注意,这很容易被欺骗


只有当用户通过上一页的链接进入当前页面时,这才起作用。如果他们使用书签或键入URL等,
referer
将为空,您无法获取有关以前窗口中内容的信息。(特别是:
history
对象中没有任何内容可以告诉您。)这只是浏览器中不可用的信息。

您可以尝试使用
文档。referer
history
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和
文档。推荐人
并不总是准确的,请参阅单页应用程序

相关-相关-相关-是我做SPA,推荐人总是返回空字符串我做SPA,推荐人总是返回空字符串string@DonnyGunawan:那是不可能的。如果我跟踪从Facebook到您SPA的链接,
document.referer
将是Facebook的URL.is document.referer将为空,如果页面在新选项卡中打开?@rifa29-请查看上面链接的文档。