Javascript 在java脚本中编写切换按钮时出现错误

Javascript 在java脚本中编写切换按钮时出现错误,javascript,google-chrome-extension,Javascript,Google Chrome Extension,这是我在chrome扩展中的popup.js: function getlink(){ console.log(document.getElementById("linkify").value); if(document.getElementById("linkify").value == "on") { localStorage.setItem("linkify",false); document.getElemen

这是我在chrome扩展中的popup.js:

 function getlink(){

    console.log(document.getElementById("linkify").value);
    if(document.getElementById("linkify").value == "on")
    {
            localStorage.setItem("linkify",false);

            document.getElementById("linkify").innerHTML = "Get links - off";
            document.getElementById("linkify").value = "off";
            console.log(document.getElementById("linkify").value);
            chrome.extension.sendRequest({ msg: "linkify"});

    }
    else if(document.getElementById("linkify").value == "off")
    {
        localStorage.setItem("linkify",true);
        console.log("Hello!");
        document.getElementById("linkify").innerHTML = "Get links - on";
        document.getElementById("linkify").value = "on";
        chrome.extension.sendRequest({ msg: "linkify"});

    }
    }

    $(document).ready(function (){


    if(localStorage.getItem("linkify"))
    {
        document.getElementById("linkify").innerHTML = "Get links - on";
        document.getElementById("linkify").value = "on";
    }
    $("#linkify").click(function() {
      getlink();
    });
    });
基本上,我想要的功能是:扩展中的一个按钮,可以打开或关闭。切换时,其文本会发生变化,存储在localStorage中的值也会发生变化

虽然切换工作正常,但发生的错误如下:


如果我关闭按钮,也就是说,将其转换为get links off并退出弹出窗口。然后再次打开弹出窗口,按钮状态为“开”。它没有保持它的状态

您的问题是如何使用本地存储本地存储将所有内容存储为字符串

所以基本上:

localStorage.setItem("foo", false)
localStorage.getItem("foo") // returns "false"

if(localStorage.getItem("foo")) {
  console.log("bar")
} else {
  console.log("bing")
}
// Logs bar
使用if(JSON.parse(localStorage.getItem(“linkify”))