Javascript 浏览器\单击时的操作行为。它会重新加载我的popup.html并删除会话存储

Javascript 浏览器\单击时的操作行为。它会重新加载我的popup.html并删除会话存储,javascript,google-chrome-extension,Javascript,Google Chrome Extension,我希望浏览器的动作像显示和隐藏popup.html一样。不重新加载。 我的Chrome扩展确实捕获了用户交互,并将其存储在sessionStorage中,以供后续步骤使用。但只要我点击browser_action按钮,它就会重新加载popup.html,所有内容都会丢失 请帮忙 My manifest.json文件: { "name": "...", "version": "0.1", "manifest_version": 2, "permissions": [ "tabs", "stora

我希望浏览器的动作像显示和隐藏popup.html一样。不重新加载。 我的Chrome扩展确实捕获了用户交互,并将其存储在sessionStorage中,以供后续步骤使用。但只要我点击browser_action按钮,它就会重新加载popup.html,所有内容都会丢失

请帮忙

My manifest.json文件:

{
"name": "...",
"version": "0.1",
"manifest_version": 2,

"permissions": [ "tabs", "storage"],
"background_page" : "background.html", 
"background": {

"persistent": false,
"scripts": ["background.js"]
},
"description": "---",
"icons": {
"128": "icon.png"
},

"content_security_policy": "script-src 'self'; object-src 'self'",

"browser_action": {

"default_popup": "popup.html",
"default_icon": "icon.png"
  }

}
popup.html:


这就是browserActions的工作方式,您不能将其更改为单击切换

在新选项卡或窗口中打开页面将启动新会话


如果希望存储更持久,请改用本地存储。它与会话存储具有相同的界面,但不会在新选项卡/弹出窗口中重置。

请发布您的代码。
    <script src="background.js"></script>

</head>
<body>

<form method="get" name="form">
<center>
<input type="button" name="bt" value="Record" id="b1"></input><br><br>

Status: <br><input type="text" name="status" value="Not recording" align="middle" id="status1" disabled></input>
</form>

</center>
</body>
</html>
.
..function record(){
do stuff
sessionStorage.setItem(result, id);
}
...functions
....functions 

document.addEventListener('DOMContentLoaded', function () {
document.getElementById("b1").addEventListener("click",record);

});