[解決済み] クロームの拡張機能で情報をローカルに保存するにはどうすればよいですか?
2023-04-05 19:24:19
質問
クロームの拡張機能で情報を保存したいのですが、どのようにコードを開始すればいいのかわかりません。 私はそれが文字列を保存する必要があります。 例えば、ユーザーが文字列を入力し(ポップアップ上のテキストエリアで)、この文字列がポップアップに表示されます。ユーザーがそれを終了して戻るとき、私は文字列が同じままであることを望みます。 (保存する必要があると思います。) サーバーに保存とかではなく、ユーザーのキャッシュとかに保存してほしいです。
どのように解決するのですか?
Google Chrome の
storage
API を利用して、このようなこともできるようになりました。とは異なり
localStorage
とは異なり、これはコンテンツスクリプトからもアクセス可能です。
// Somewhere in your manifest...
{
"permissions": [
"storage"
]
}
// Usage:
// PERSISTENT Storage - Globally
// Save data to storage across their browsers...
chrome.storage.sync.set({ "yourBody": "myBody" }, function(){
// A data saved callback omg so fancy
});
chrome.storage.sync.get(/* String or Array */["yourBody"], function(items){
// items = [ { "yourBody": "myBody" } ]
});
// LOCAL Storage
// Save data to storage locally, in just this browser...
chrome.storage.local.set({ "phasersTo": "awesome" }, function(){
// Data's been saved boys and girls, go on home
});
chrome.storage.local.get(/* String or Array */["phasersTo"], function(items){
// items = [ { "phasersTo": "awesome" } ]
});
これらの悪ふざけがどのように機能するかについての詳細は、こちらをご覧ください。 https://developer.chrome.com/extensions/storage#type-StorageArea
以前の回答です。
使用方法 ローカルストレージ . Google ChromeはHTML5のいくつかの機能を実装しており、そのうちの1つである。
//Pull text from user inputbox
var data = document.getElementById("this_input").value;
//Save it to the localStorage variable which will always remember what you store in it
localStorage["inputText"] = data;
バックグラウンドのページからしかストレージにアクセスできない(コンテンツスクリプトがない)ので、そのためにメッセージングを使用する必要があることに留意してください。
関連
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] JavaScriptで空文字列/未定義文字列/null文字列をチェックするにはどうすればよいですか?
-
[解決済み] JavaScriptで要素のクラスを変更するにはどうすればよいですか?
-
[解決済み] JavaScriptで文字列をbooleanに変換するにはどうしたらいいですか?
-
[解決済み] 2つのJavaScriptオブジェクトのプロパティを動的にマージするにはどうすればよいですか?
-
[解決済み] JavaScriptでクエリ文字列の値を取得するにはどうすればよいですか?
-
[解決済み] jQueryでページを更新するにはどうすればよいですか?
-
[解決済み] Javascriptによるタッチスクリーンデバイスの検出
-
[解決済み] 無効になっている入力フィールドの値を送信する
-
[解決済み] モデルフェッチ時に1をtrueに、0をfalseに変換する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] JavaScript で範囲を作成する - 奇妙な構文
-
[解決済み] reactのrender関数でdynamic hrefを作成するには?
-
[解決済み] モバイルWeb HTML5フレームワークの選び方【終了しました
-
[解決済み] JavaScriptで、ある文字列が別の文字列の中に出現するすべてのインデックスを見つけるにはどうすればよいですか?
-
[解決済み] 兄弟ノードを選択する方法はありますか?
-
[解決済み] オブジェクトの配列からReactコンポーネントをレンダリングする
-
[解決済み] JavaScriptで文字列を数値に変換する最速の方法は何ですか?
-
[解決済み] jqueryはjavascriptのライブラリなのかフレームワークなのか?[クローズド]
-
[解決済み] イテレータでmap()を使用する
-
[解決済み] <ng-content>が空かどうかを確認する方法は?(これまでのAngular 2+で)