JS有条件地使用Chrome而不是Firefox

时间:2014-09-20 14:00:30

标签: javascript firefox local-storage conditional

我正在制作一个基本的网络应用程序(新手级别介意你),各种文本编辑器。无论如何,使用localStorage我保存文本,字体大小和字体系列。 所有这些都有效,没问题。但是,我有一个按钮在sans-serif和serif之间切换,当文本在serif中时,只显示sans-serif按钮,当然,反之亦然。这也有效,但由于某种原因,它在使用下面的条件的Firefox中不起作用。在Chrome中运行正常,这很奇怪。

我使用了两个console.log来查看发生了什么,无论如何,Firefox总是充斥着“其他”声明。

有什么想法吗?

谢谢!

function fontButton() {
    if (window.localStorage.getItem('storedFontFamily') == "'Exo 2', 'Helvetica Neue', Helvetica, Arial, sans-serif" || editor.style.fontFamily == "'Exo 2', 'Helvetica Neue', Helvetica, Arial, sans-serif") {
        console.log("if statement");
        sansSerifFont.style.display = "none";
        serifFont.style.display = "inline-block";
    } else {
        console.log("else statement");
        serifFont.style.display = "none";
        sansSerifFont.style.display = "inline-block";
    }
}

1 个答案:

答案 0 :(得分:0)

所以问题可能是双/单引号?在我看来,如果字符串中有'sans-serif',在这种情况下最好使用正则表达式测试。

if(/sans-serif/.test(window.localStorage.getItem('storedFontFamily'))) {
    //...
} else {
    //...
}