sessionStorageのモバイル互換性の問題

 

最近、モバイルプロジェクトを開発する場合、ローカルストレージが必要な場所がたくさんあります。これは、現在開いているウィンドウのユーザーデータを記憶するだけの問題なので、sessionStorageを使用することにしました。

使用シナリオは次のとおりです。

A.htmlページはデータの一部を記録する必要があります{a:1、b:2};

sessionStorage.setItem( "data"、 "{a:1、b:2}");

 

B.htmlページを取り出して使用します。

sessionStorage.getItem( "data"); //結果はnullです

 

問題:

 

プロジェクトが単一ページの複数のアプリケーションではない場合、ABは2つのhtmlファイルなので、hrefにジャンプする必要があります。Andironシステムの一部のブラウザがページBでフェッチされ、結果がnullであることがわかります(vivo携帯電話に搭載されている世界のウィンドウブラウザなど)。

 

理由:

 

分析後も、sessionStorageのオブジェクトを取得できるため、このブラウザがsessionStorageをサポートしていないわけではありません。

 

ただし、sessionStorageは現在のウィンドウのデータストレージ形式であるため、一部のブラウザは新しいページにジャンプするときに新しいwebViewを開き、元のページをオフにします。これは、新しいウィンドウ。

 

このようにして、彼はsessionStorageの原則と矛盾します。もちろん、新しいページでは利用できません。

 

したがって、モバイルを実行しているときに単一ページの複数アプリケーションプロジェクトでない場合は、sessionStorageを使用しないことをお勧めします。注意して使用してください!

 

おすすめ

転載: www.cnblogs.com/liubingyjui/p/12720958.html