Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript “分离”Chrome.storage适用于每个选项卡_Javascript_Jquery_Google Chrome_Google Chrome Extension - Fatal编程技术网

Javascript “分离”Chrome.storage适用于每个选项卡

Javascript “分离”Chrome.storage适用于每个选项卡,javascript,jquery,google-chrome,google-chrome-extension,Javascript,Jquery,Google Chrome,Google Chrome Extension,所以我有这样的情况,通过内容脚本,我从网页的DOM中获取数据。我需要将此数据传递到浏览器操作扩展的弹出页面 它工作得很好,但是chrome.storage变量是共享的,所以我在任何地方都有相同的数据 例如:让我们有一个脚本,它在“/”之后获取URL。因此,从第一个选项卡上的google.com/one和第二个选项卡上的google.com/two,我的扩展名只能得到“2”。我的观点是,我需要为每个选项卡分离这些存储空间,或者找到另一种解决方法 是否可以为每个选项卡使用唯一标识符?这个答案建议使用

所以我有这样的情况,通过内容脚本,我从网页的DOM中获取数据。我需要将此数据传递到浏览器操作扩展的弹出页面

它工作得很好,但是chrome.storage变量是共享的,所以我在任何地方都有相同的数据


例如:让我们有一个脚本,它在“/”之后获取URL。因此,从第一个选项卡上的google.com/one和第二个选项卡上的google.com/two,我的扩展名只能得到“2”。我的观点是,我需要为每个选项卡分离这些存储空间,或者找到另一种解决方法

是否可以为每个选项卡使用唯一标识符?这个答案建议使用tabid作为键。您的扩展插件使用什么代码来访问选项卡数据?如果数据不大,比如说,小于100kB的字符串化,通过sendMessage传递数据可能是更好的解决方案,前提是您不需要在浏览会话之间保留数据。是的,它就像100个字符长的字符串,也许我会使用消息传递,谢谢。。顺便说一句,现在它只是内容脚本->背景页面->弹出窗口,或者有更简单的方法?欢迎使用堆栈溢出。我打断了你的帖子。请不要使用标签,请使用空行。如果你把你迄今为止所尝试过的东西贴出来,会帮助别人更快地帮助你。