0

我正在编写我的第一个 chrome 扩展。这是我想做的事情:

该扩展程序应该使学习汉字更容易。这个想法是用户可以在一个网站上突出显示他已经知道的汉字,然后当他从另一个域访问另一个网站时,他之前标记的所有字符都会突出显示。(所以字符列表应该是持久的,最多 1000 个字符) ;

我让它与内容脚本、数组和本地存储一起工作:

localStorage.hanzimarker= JSON.stringify(characterlist);

但是,由于安全策略的原因,它不适用于不同的网站。每个域都在本地存储中(如果我将网页保存到本地文件系统或相同域的页面,它可以工作)。

有没有解决的办法?也许使用背景页面的本地存储?我的第一个想法是将字符列表写入文本文件并稍后解析,但据我了解,这也是不允许的。或者是否有另一种类型的存储没有此限制?

4

1 回答 1

0

如果有人遇到同样的问题:rsanchez 的提示是正确的:使用http://developer.chrome.com/extensions/storage.html

var storage = chrome.storage.local;
default_list = ['a','b','c'];

storage.set({'test':default_list},function(){
    console.log('test written');
});
storage.get('test', function(content){

    console.log('test read content', content.test);
});

与 localstorage 不同,它是异步的,因此在我的示例中,您必须在 console.log 调用所在的位置放置一个回调。它适用于对象。

于 2013-09-26T10:36:37.083 回答