1

複数ページのアプリで JavaScript オブジェクトを存続させるにはどうすればよいですか (ブラウザーを個別に)。

たとえば、それを解決するバックグラウンドページを備えたChrome拡張機能を作成できることは知っていますが、ブラウザに依存しない方法はありますか?

4

3 に答える 3

2

1 つの方法は、JavaScript コードでページをロードし (「ajax」呼び出しを介して)、html の本文またはその一部を置き換えることです。このように、ブラウザに関する限り、あなたはまだ同じ「ページ」にいます。Web サイト内のすべてのリンクが無効であることを確認する必要があります。また、ブラウザー ページの読み込みを引き起こす代わりに、実際に JavaScript 関数をトリガーします。これは、たとえば、Facebook が Web サイトでのクリックを管理する方法です。https://stackoverflow.com/a/7425870/562906を参照してください。

于 2012-04-26T12:43:34.790 に答える
1

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を実行する場合、サードパーティのスクリプトは必要ない可能性があります

于 2012-04-26T12:43:46.267 に答える
0

Cookie を使用して、ページ要求間でデータを渡すことができます。それとは別に、オブジェクトを最初から再構築する必要があります。

于 2012-04-26T12:36:11.323 に答える