多くのフレームワークには親子関係があり、操作が非常に面倒です。多くの学生は次のような悲惨なコードを使用しています。
window.parent.document.getElementById("main")
.contentWindow.document.getElementById('input').value =
document.getElementById ('myIframe')
.contentWindow.document.getElementById('s0').value;
実際、この問題は window.top と呼ばれる固定ウィンドウがあります。フレームワーク アプリケーションでこのページにデータをキャッシュすると、サブページがどのように変更されても、その下のすべてのフレームを取得できます。 Cookie や HTML5 ローカル データベース戦略を使用する必要はありません。次の内容の js ファイルを参照するだけです:
var share = {
/**
* フレーム間データ共有インターフェース
* @param {String} 保存されるデータの名前
* @param {Any} 保存される任意のデータ (この項目がない場合、クエリされたデータが返されます) )
*/
data: function (name, value) {
var top = window.top,
cache = top['_CACHE'] {};
top['_CACHE'] = キャッシュ [name] = 値 :キャッシュ[名前];
/**
* データ共有削除インターフェース
* @param {String} 削除されたデータ名
*/
removeData: 関数 (名前) {
var キャッシュ = window.top['_CACHE']; (cache && キャッシュ[名前]) delete キャッシュ[名前];
}
};
わずか数行のこのメソッドは、各フレーム ページのあらゆる種類のデータを共有できます。これはページ名に関係するもので、レベルは関係ありません。ある日フレームページのレベルが変更されても、まったく心配する必要はありません。
たとえば、ページ A に共有データを保存できる場合:
コードをコピーします
コードは次のとおりです: share.data('myblog', 'http://www.jb51.net');
share.data('editTitle', function (val) {
ドキュメント。 title = val;
});
次に、フレーム ページがページ A のデータをランダムに取得します
コードをコピーします
コードは次のとおりです: alert('私のブログのアドレスは: ' share.data('myblog'); var editTitle = share.data(' editTitle');
editTitle('データを取得しました');
はい、このテクノロジーは
artDialog。