フレーム使用をするとページとしないページの両方で使われるものを作成中です。
下のページで特定のフレーム名がすでに開かれている時だけ、そのフレームに表示したいのですが。

フレーム名がすでに開かれているかを取得する方法がありますでしょうか。
闇雲にwindow.open("a.html","left");だと別のウィンドゥとして開かれてしまうので、この前に判定したいのですが。

よろしくお願いします。

A 回答 (2件)

こんばんわぁ、Blackwinglsです。



top.frames.length
でフレーム数を取得できます。
フレーム数が1以上の時に
top.frames[x].name
でフレーム名を取得してみるってのはどうでしょうか?
なお、xは0から始まりますので要注意。

今、歯が痛くて、サンプルスクリプトを書くだけの元気がないので・・・・(^^;)
ちょっと思い付いた分だけ書いてみました。

ではでは(^^)/~~~
    • good
    • 0
この回答へのお礼

この使い方でうまくいったみたいです。
0から始まる注意事項もありがたかったです。
ありがとうございました。

お礼日時:2001/02/04 21:13

<script ~><!--


if(top.left&&top.left.location.href)
window.open(~)
//--></script>

もしleftに特定のhtmlが入っている必要があるのなら、
<sc ~><!--
if(top.left&&top.left.location.href=="***.htm")

//--></~
という感じ。
    • good
    • 0
この回答へのお礼

とても簡潔な使い方の表現ありがうございました。
でも、この内容ですと私の使い方の誤りかもしれませんが、存在しないフレームの場合にスクリプトエラーが発生します(IE5.0 Win2K)。
NN6では大丈夫のようですが、今回は汎用的なスクリプトを作成中のため、残念ですが利用できませんでした。
いずれこの使い方も使うことがあると思います、ありがとうございました。

お礼日時:2001/02/04 21:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報