複数ページのアプリで JavaScript オブジェクトを存続させるにはどうすればよいですか (ブラウザーを個別に)。
たとえば、それを解決するバックグラウンドページを備えたChrome拡張機能を作成できることは知っていますが、ブラウザに依存しない方法はありますか?
複数ページのアプリで JavaScript オブジェクトを存続させるにはどうすればよいですか (ブラウザーを個別に)。
たとえば、それを解決するバックグラウンドページを備えたChrome拡張機能を作成できることは知っていますが、ブラウザに依存しない方法はありますか?
1 つの方法は、JavaScript コードでページをロードし (「ajax」呼び出しを介して)、html の本文またはその一部を置き換えることです。このように、ブラウザに関する限り、あなたはまだ同じ「ページ」にいます。Web サイト内のすべてのリンクが無効であることを確認する必要があります。また、ブラウザー ページの読み込みを引き起こす代わりに、実際に JavaScript 関数をトリガーします。これは、たとえば、Facebook が Web サイトでのクリックを管理する方法です。https://stackoverflow.com/a/7425870/562906を参照してください。
html5 を使用しているため、ローカル ストレージを使用してオブジェクトの JSON 表現を保存できます。
var json_text = JSON.stringify(your_object, null, 2);
localStorage.setItem("someKey", json_text);
次に、他のページでアイテムを取得するには:
var your_object = JSON.parse(localStorage.getItem("someKey"));
使用JSON.stringify
するには、 JSON-jsが必要になる場合があります。ブラウザーが html5を実行する場合、サードパーティのスクリプトは必要ない可能性があります。
Cookie を使用して、ページ要求間でデータを渡すことができます。それとは別に、オブジェクトを最初から再構築する必要があります。