【问题标题】:Localstorage not working properly in Firefox?本地存储在 Firefox 中无法正常工作?
【发布时间】:2018-04-21 20:36:51
【问题描述】:

我在我的主题中使用引导选项卡。我将当前标签号存储到localstorage。执行完我的功能后,我正在重新加载我的页面并从localstorage 获取tab#。它在 chrome 上运行良好,但在 Firefox 上运行不正常。以下是我的代码:

$("ul.nav-tabs > li > a").on("shown.bs.tab", function(e){
   var id = $(e.target).attr("href").substr(1);
   window.location.hash = id;
   localStorage.setItem('tab',id);
});

我正在从存储中获取:

localStorage.getItem('tab');

例如在 Chrome 中它给出#tab3,但在 Firefox 中它给出htab3。将# 替换为h。我怎样才能解决这个问题?

【问题讨论】:

  • 很怀疑FF对localStorage有这么严重的问题。如果你做console.log(id),你会看到什么?

标签: jquery firefox local-storage


【解决方案1】:

我不知道哪个版本的 Firefox 可以做到这一点,因为在 59.0.2 上似乎工作正常。

如果您对特殊字符有疑问,但使用 base64 可能是一种解决方法。

var myStorage = {
    getItem: function _get(key) {
        return atob(localStorage.getItem(key));
    },
    setItem: function _set(key, val) {
        return localStorage.setItem(key, btoa(val));
    }
}


//Testing it
myStorage.setItem('tabs', '#four');
console.info(myStorage.getItem('tabs'));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-06-01
    • 1970-01-01
    • 2022-01-11
    • 1970-01-01
    • 2019-08-07
    • 2013-06-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多