2013-09-25 21 views
0

我正在寫第一個Chrome擴展。這是我正在嘗試做的:鉻擴展名:跨域存儲和訪問較大的字符列表

擴展名應該讓學習漢字變得更容易。這個想法是,用戶可以突出顯示他在一個網站上已經知道的中文字符,然後當他從另一個域訪問另一個網站時,他以前標記的所有字符都會突出顯示。(因此字符表應該是持久的,最多可以包含1000個字符) ;

我得到了它與內容腳本,數組和localStorage的工作:

localStorage.hanzimarker= JSON.stringify(characterlist); 

然而,由於安全策略不會在不同的網站工作。因爲每個域都在本地存儲器上(如果我將網頁保存到本地文件系統或同一網域的網頁工作)。

有沒有辦法解決這個問題?也許與本地存儲的背景頁面?我的第一個想法是將字符列表寫入一個文本文件並稍後解析,但這也是不允許的,因爲我明白了。還是有另一種類型的存儲沒有這種限制?

+1

是的,你可以使用'chrome.storage' http://developer.chrome.com/extensions/storage.html – rsanchez

+0

謝謝,我會試試。 – ddd

回答

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調用是在我例。 它適用於對象。