首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何检查用户是否可以返回浏览器历史记录

如何检查用户是否可以返回浏览器历史记录
EN

Stack Overflow用户
提问于 2010-08-28 05:38:34
回答 16查看 199.4K关注 0票数 179

我想使用JavaScript查看是否有历史记录,我的意思是浏览器上的后退按钮是否可用。

EN

回答 16

Stack Overflow用户

发布于 2011-10-05 00:47:55

还有另一种检查方法-检查推荐人。第一个页面通常会有一个空的引用...

代码语言:javascript
复制
if (document.referrer == "") {
    window.close()
} else {
    history.back()
}
票数 95
EN

Stack Overflow用户

发布于 2014-06-05 17:41:39

我的代码让浏览器返回一个页面,如果失败,它会加载一个后备url。它还可以检测hashtag更改。

当后退按钮不可用时,后退url将在500毫秒后加载,因此浏览器有足够的时间加载上一页。在window.history.go(-1);之后加载回退url会导致浏览器使用回退url,因为js脚本还没有停止。

代码语言:javascript
复制
function historyBackWFallback(fallbackUrl) {
    fallbackUrl = fallbackUrl || '/';
    var prevPage = window.location.href;

    window.history.go(-1);

    setTimeout(function(){ 
        if (window.location.href == prevPage) {
            window.location.href = fallbackUrl; 
        }
    }, 500);
}
票数 65
EN

Stack Overflow用户

发布于 2016-01-22 22:43:54

请小心使用window.history.length,因为它还包含window.history.forward()的条目

因此,您可能有超过1个条目的window.history.length,但没有历史回溯条目。这意味着如果您触发window.history.back(),则不会发生任何事情

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3588315

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档