そのウインドウがサブウインドウであるかないかで処理を分岐させたいのですが、その確認方法を教えていただけないでしょうか。
どこかのサイトで見たような記憶もあるのですが、適切なキーワードが浮かばず探せませんでした。

A 回答 (1件)

こんにちはs-holmesさん、xruzです。



if(opener) alert("This is SUB"); else alert("This is Not sub");

これではダメですか、上記スクリプトを実行したWindowがopenerオブジェクトを持っているかどうかの判断です。

がんばってくださいね(~:~i
    • good
    • 0
この回答へのお礼

xruzさん回答ありがとうございました。
おかげ様で、やっとこれができるようになりました。
「サブウインドウ」地獄(思うように動かないという・・・)にはまりかけていたので助かります。

お礼日時:2001/11/26 09:42

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

このQ&Aと関連する良く見られている質問

Qサブウインドウから親ウインドウのラジオボタンにチェックを入れる

javascriptでサブウインドウから親ウインドウのフォームにデータを表示する場合、

window.opener.hoge_form.hoge_textarea.value=aaa;

のような記述をしますが、ラジオボタンにチェックを入れる場合はどのように記述すればいいのでしょうか?
どなたか教えてください。よろしくお願いします。;

Aベストアンサー

自ウィンドウの場合と同様です。
hoge_form.hoge_radio.checked = true;

ラジオボタンは普通は複数あるので、hoge_radio[1]みたいにして識別。

Q開いたサブウインドウ側のみで小さなウインドウを出す方法

FLASHを使っていて別ウインドウで開くというボタンを作りました。 FLASH側ではBLANKという形でウインドウの名前しか指定していません。

が、ここからが問題でして、別ウインドウで開いたウインドウサイズを小さくしたいのです。そこで
開いたウインドウ側のhtmlファイルのみにスクリプトを書いてそのウインドウのサイズを小さくする方法はないのでしょうか?

お手数おかけいたしますがご存知の方がいらっしゃいましたら教えてください。
よろしくお願いいたします。
(以前同様の質問をしたのですが少しやってみて異なっていることがわかりましたので再度質問しております。)

Aベストアンサー

こんにちは。

リンク元のウィンドウからサイズを指定して新しいウィンドウを開くのではなくて、新たに開くHTML自身でサイズ指定をしたいということですね?

開いた瞬間に指定した大きさでウィンドウを開くスクリプトもあるのですが、IEではサポートされていないので別の方法をご紹介します。

新たに開くhtmlの<head>~</head>の間に

<script language="JavaScript">
<!--
resizeTo(320,240);
//-->
</script>

を加えてください。

注1:320が縦、240が横を指定しています。自由に設定してください。

注2:これはブラウザのメニューバー等をすべて含んだウィンドウの外側の大きさです。それを考慮に入れてサイズ指定してください。尚、メニューバー等はJavaScriptで消すこともできます。

注3:これはあくまでも「リサイズ」なので、開いた瞬間は一瞬だけ閲覧者の設定した大きさで表示されてしまいす。(閲覧者が新たなウィンドウを最大化して開くように設定していた場合、一瞬だけ最大表示されてしまいます。)

ちょっと古い知識なので、もしかしたらご希望通りに動作する新しい記述方法があるのかもしれません。

こんにちは。

リンク元のウィンドウからサイズを指定して新しいウィンドウを開くのではなくて、新たに開くHTML自身でサイズ指定をしたいということですね?

開いた瞬間に指定した大きさでウィンドウを開くスクリプトもあるのですが、IEではサポートされていないので別の方法をご紹介します。

新たに開くhtmlの<head>~</head>の間に

<script language="JavaScript">
<!--
resizeTo(320,240);
//-->
</script>

を加えてください。

注1:320が縦、240が横を指定しています。自由に設定...続きを読む

Qサブウインドウの高さを自動で変更させたい。

ホームページビルダー9を使用してWebサイトを作成中です。
幅は400ピクセルで固定、高さはサブウインドウ内の文章によりサイズを自動で変更させたいのですが、高さの指示の出し方が分かりません。
現在は幅400:高さ500の固定で下記スクリプトを使用しています。
変更箇所をご教授下さい。
よろしくお願いします。

-headタグ内-
<SCRIPT language="JavaScript">
<!--HPB_SCRIPT_CODE_40
function _HpbJumpURLinNewWindow(url)
{
if (url != '')
{
window.open(url, '_blank', "width=400,height=500");
}
}
//-->
</SCRIPT>

-bodyタグ内-
<A onclick="_HpbJumpURLinNewWindow('url');" href="javascript:void(0)">

Aベストアンサー

高さ700の場合、

<SCRIPT language="JavaScript">
<!--HPB_SCRIPT_CODE_40
function _HpbJumpURLinNewWindow(url,winH)
{
if (url != '')
{
window.open(url, '_blank', "width=400,height="+winH+"");
}
}
//-->
</SCRIPT>

-bodyタグ内-
<A onclick="_HpbJumpURLinNewWindow('url',700);" href="javascript:void(0)">

Qコントロールでサブウインドウを開いた時、元のhtmlを再読み込みさせない

javaスクリプトで
ボタンを押すと、サブウインドウが開くように設定しています。
ですが、サブウインドウを開くと、元のhtmlがイチイチ再読み込みされて
しまいます(サブウインドウが表示される間に元のhtmlが一旦消え、そのページの
トップまで戻って表示される)

他のサイトをみていても、サブウインドウを開いても、
そのような現象にはなりません。心当たりはありませんでしょうか?

Aベストアンサー

よくある質問だと思いますが、たぶんリンクはこんな記述なのでしょう。

<a href="#" onclick="window.open(,,)">xxx</a>
※ open関数内の記述は省略

以下のように変更してみましょう
<a href="javascript:void(0)" onclick="window.open(,,)">xxx</a>

または、javascriptがoffの時は、そのwindowに直接開くようにする。アクセシビリティの観点からはこちらを推奨。
<a href="taisyo.html" onclick="window.open(this.href,,); return false;">xxx</a>

ん? ボタン? ボタンで、なぜ元ページに影響するの?
type="button" ではなく type="submit" とでもしているのでしょうか?

Q子ウインドウ(別窓)のURLとタイトルを取得し、親ウインドウのフォームに表示させる処理。

JavaScriptを使って、次のような処理を実現したいのですが、可能なら是非お教え頂きたく、宜しくお願いします。

1.親ウインドウにあるボタン1を押すと子ウインドウ出現。
2.子ウインドウで目的のURLを表示させて・・・。
3.親ウインドウにあるボタン2を押すと・・・。
4.親ウインドウにあるフォーム1に子ウィンドウのURLを表示し、
5.同時に親ウインドウにあるフォーム2に子ウインドウのタイトル(<title>タグで囲まれた部分)を表示させる。

・・・というものです。 どうぞ宜しくおねがいいたします。

Aベストアンサー

こんな感じでいかがでしょう?
(子ウィンドウでgooを開いてみました)

---

<HTML>
<HEAD>
<SCRIPT language="javascript">
<!--
function openWin(){
newWin = window.open("http://goo.ne.jp", "myWin");
}
function getInfo(){
document.form1.myURL.value =newWin.location.href;
document.form2.myTitle.value =newWin.document.title;
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<INPUT type="button" onClick="openWin();" value="btn1">
<INPUT type="button" onClick="getInfo();" value="btn2">
<FORM name="form1">
<INPUT type="text" name="myURL">
</FORM>
<FORM name="form2">
<INPUT type="text" name="myTitle">
</FORM>
</BODY>
</HTML>

こんな感じでいかがでしょう?
(子ウィンドウでgooを開いてみました)

---

<HTML>
<HEAD>
<SCRIPT language="javascript">
<!--
function openWin(){
newWin = window.open("http://goo.ne.jp", "myWin");
}
function getInfo(){
document.form1.myURL.value =newWin.location.href;
document.form2.myTitle.value =newWin.document.title;
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<INPUT type="button" onClick="openWin();" value="btn1">
<INPUT type="button" onClick="getInfo();" va...続きを読む


人気Q&Aランキング

おすすめ情報