タイミングをずらすには?

[上に] [前に] [次に]
執事 1999/12/06(月) 19:06:30
いつもお世話になっております。
またまた質問です。

自フレームから他のフレームの値を参照する場合に、
表示されていない(ロードされている状態)時に値を参照
しようとして、スクリプトエラーがでてしまうのです。

そのフレームのHTMLがロード終了かどうかチェックする
方法とかありますでしょうか?

無責任官庁 1999/12/07(火) 15:29:50
今、パっと思いついたことで言いますけど、
フレームを3つにするのはどうでしょう?

A・B・Cのフレームを作成します。
そして、A・Bが、既存のスクリプトのフレームだとします。
Cは、表示0%のダミーフレームとし、
<form name='flag'>
<input type=hidden name='a_kidousita' value='no'>
<input type=hidden name='b_kidousita' value='no'>
</form>
なんてのを書いておいて・・・

A・BのHTMLの最後(</body>の直前とか)で、
parent.C.document.flag.a_kidousita.value = 'yes';
とか入れて・・・(Bなら、b_kidousita)

Cフレームの中にスクリプトを記述して、
a_kidousita と、b_kidousita が、ともに'yes' になるまでループ・・・
'yes' になったら、処理を実行する・・・とか。
(もちろん、タイムアウト時間は設定しましょう)
他のフレームのスクリプトなんかもCに入れておいて、
AやBから起動するような感じにしちゃうと、結構見た目もスマートになるかも・・・

#これはあくまで思いつきです。
#処理の詳細が分からないので、適用できるかどうかは分かりません。

Tmb 1999/12/07(火) 15:37:16
IEならreadyStateってのが使えたと思います。
ラウンジ検索で探してみてください。

確か存在しないフォーム部品名によるエラーの,回避方法とかも
以前話題になった憶えがあります。

執事 1999/12/07(火) 15:45:38
[[解決]]
無責任官庁さん
Tmbさん
ありがとうございました。
応急処置として
参照されるHTMLファイルの最後に画像(サイズ0)
を読み込ませるようにし、
この画像が読み終わったら、JavaScriptが
値を参照しに行くという処置をさせました。
まだ完全に動くか確認してないのですが・・・
お二人のも試してみたいと思います。
ありがとうございました。

[上に] [前に] [次に]