首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PerformanceNavigation的替代Javascript方法(跨浏览器兼容)

PerformanceNavigation的替代Javascript方法(跨浏览器兼容)
EN

Stack Overflow用户
提问于 2020-09-08 10:49:29
回答 2查看 331关注 0票数 0

我已经成功地实现了以下Javascript,但在实现与window.performance.navigation的跨浏览器兼容性(特别是在Firefox中)时遇到了一些困难,因为它已经被弃用了。

到目前为止,我已经实现了以下内容:

代码语言:javascript
复制
window.addEventListener("load",function(event){
    var historyTraversal=event.persisted||
    (typeof window.performance!=="undefined"&&
    window.performance.navigation.type===2);
    if(historyTraversal){
        window.history.back();
    }
});

有没有其他的方法来格式化这个?

EN

回答 2

Stack Overflow用户

发布于 2020-09-09 15:30:34

正如在MDN中提到的,Performance.navigation已被弃用,因为它在Navigation Timing Level 2 specification中被标记为这样。按照规范中的建议,应该使用PerformanceNavigationTiming:这与所有最新的主要浏览器都兼容。

您正在寻找的属性现在是可用的here,您可以通过var perfEntries = performance.getEntriesByType("back_forward");来查询它。

票数 0
EN

Stack Overflow用户

发布于 2021-05-02 20:18:07

不幸的是,它在Safari中不起作用。

这样做(请参阅Safari back button doesn't reload page when used):

代码语言:javascript
复制
window.addEventListener("pageshow", function(evt){
    if(evt.persisted){
    setTimeout(function(){
        window.location.reload();
    },10);
}
}, false);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63786476

复制
相关文章

相似问题

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