Chrome扩展中正在删除本地存储

时间:2015-11-19 14:19:52

标签: javascript google-chrome google-chrome-extension local-storage

所以我想保存用户选择的主题,因此我选择弹出窗口来显示它们。 每次我关闭我的标签(3次之后)或退出铬,都会忘记我的选择。

我的options.html

<html>
<head>
  <script src="options.js"></script>
  <link href='https://fonts.googleapis.com/css?family=Raleway:400,300,200,100' rel='stylesheet' type='text/css'>
</head>
<body>
  <center>
    <label class="paylabel" for="cardtype">Theme:</label>
    <select id="cardtype" name="cards">
      <option value="selectcard">--- Please select ---</option>
      <option value="op1">Theme 1</option>
      <option value="op2">Theme 2</option>
    </select>
  </center>
  <br />
  <br />
  <br />
  <br />
  <h1 style="font-family:Raleway; font-weight:200; float:left">Theme 1</h1>
    <h1 style="font-family:Raleway; font-weight:200; float:Right">Theme 2</h1>
    <br />
    <br />
    <br />
    <br />
    <br />
    <br />
  <img src = "screen2.png"; alt="" style="float:left"/>

  <img src = "screen1.png"; alt="" style="float:right"/>
</body>
</html>

Options.js:

time=setInterval(function(){
  var ddl = document.getElementById("cardtype");
  var selectedValue = ddl.options[ddl.selectedIndex].value;
  localStorage["inputText"] = selectedValue;
  var myvar = localStorage["inputText"];
    if (myvar == "op2")
   {
     chrome.browserAction.setPopup({
             popup: 'popup.html'
         });
   }
   else{
     chrome.browserAction.setPopup({
             popup: 'popup2.html'
         });
   }
},1000);

感谢。

1 个答案:

答案 0 :(得分:0)

  1. 在结束==标记之前移动<script src="options.js"></script>,这样只有在解析并加载整个文档时才会执行脚本代码。
  2. 而不是</body>使用正确的变更监听器。
  3. setInterval