Javaで新しい窓を開く方法

このQ&Aのポイント
  • ホームページ作成中のJavaで、新しい窓を開く方法について知りたいです。
  • 別に準備せずに元のページで制御する方法があるのか知りたいです。
  • 特定のスクリプトを改造することで、小窓を開くことができるのか知りたいです。
回答を見る
  • ベストアンサー

javaで新しい窓を開く方法。

ホームページ作成中です。ページを開くと小窓で1ページ出したいのですが、そのページを別に準備する方法はわかったのですが、新しく開くページの内容さえも元ページで制御する方法がわかりません。 というか、出来るのでしょうか? 簡単に言うと、小窓用別ファイルを準備せずに元ページですべて済ませたいって事です。 別ページを開く物として以下のスクリプトを見つけました。これを改造して、別ページを準備しなくでも小窓が開くように改造可能でしょうか? よろしくお願いします。 ----------------------------------- <SCRIPT LANGUAGE="JavaScript"> <!-- function WinOpen(){ Wina02=window.open('aisatsu.htm','WinNamea02','scrollbars=1,resizable=1,width=300,height=300') Wina02.opener=self if(navigator.appVersion.charAt(0)>=3){Wina02.focus()} } WinOpen() <!----> </SCRIPT>

質問者が選んだベストアンサー

  • ベストアンサー
noname#199778
noname#199778
回答No.3

新しいウィンドウを開くときにIDを振っておいて、そのIDを利用してdocument.writeで内容を書き出せば良いと思います。 以下に改造後のスクリプトを書きます。 <SCRIPT LANGUAGE="JavaScript"> <!-- function WinOpen(){ Wina02=window.open('','WinNamea02','scrollbars=1,resizable=1,width=300,height=300') Wina02.document.open(); Wina02.document.write("<html><head>"); Wina02.document.write("<title>小窓<"+"/title><"+"/head>"); Wina02.document.write("<body><p>こんな感じに書き出せます。<"+"/p><"+"/body><"+"/html>"); Wina02.document.close(); Wina02.opener=self if(navigator.appVersion.charAt(0)>=3){Wina02.focus()} } WinOpen() // --> </SCRIPT> これでいかがでしょうか。 あと、気になったのですが、HTMLのコメントアウト部の終了部は、「<!---->」ではなく「-->」ですね。 またこれがスクリプトとして判断されないように、script要素内では「// -->」と閉じるのが定石だと思います。 参考になれば幸いです。

master-3rd
質問者

お礼

ありがとうございます。ばっちり動きました。 余談ですが、 >HTMLのコメントアウト部の終了部 はホームページをめぐっていて見つけたソースをコピーしただけです。その作者の方が間違っていたということですね。 でも、そのサイトもjava素材ページでしたが…大丈夫なのかな?w

その他の回答 (2)

  • malice
  • ベストアンサー率42% (46/109)
回答No.2

ごめんなさい、下記の#1で回答した者です。 一ヶ所間違えました。 <script language="javascript"> <!--- function ●●●(){window.open("./○○.html","●●●", "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,width=500,height=180")} //---> </script></head> <body><body onLoad="●●●()"> ●部分の追加です。下はgacktとか書いてありますが…(^_^;) ツールバーを表示したいなどの場合は、noをyesに変更するか、その部分をそっくり消して使えば大丈夫です。

master-3rd
質問者

補足

回答ありがとうございます。私の説明が下手だったようです。 その小窓の内容はどこに書けばいいのでしょうか?別ファイルを準備(○○.html)ではなく、このスクリプト内にすべて書き込みしたいのですが… それとも出来ない物なんでしょうか? 再度回答お願いします。

  • malice
  • ベストアンサー率42% (46/109)
回答No.1

<script language="javascript"> <!--- function gackt(){window.open("./○○.html","●●●", "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,width=500,height=180")} //---> </script></head> <body><body onLoad="●●●()"> これで小窓が開きます。 widthとheghtの部分で窓の大きさを決めて下さい。 小窓で表示するHTMLが○○.htmlです。 ●●●の部分はどんな言葉でもかまいませんが、同じ物を入れて下さい。abcでもxyzでも何でも大丈夫です。 ちなみに上記はスクロールバーなしで、ツールバーやアドレスバーも全く無いです。

関連するQ&A

  • function WinOpen()について

    このカテゴリーに質問してよいことなのか?。間違っていたらすみません。 [function WinOpen()]で新しく開いたウィンドで、呼び出されたURLを見ると [空]になっているのですが、どこのウィンド(URL)から呼び出されたのかを 知るのは出来ないのでしょうか?。 <SCRIPT LANGUAGE="JavaScript"> <!-- function WinOpen(){  Wina02=window.open('データ名.html','wind01','width=120,height=120,top=150,left=500')  Wina02.opener=self //  if(navigator.appVersion.charAt(0)>=3){Wina02.focus()} } <!----> </SCRIPT> このスプリクトから開くと、リンク元のURLが空になっているので、 それを知りたいのです。

  • ブラウザが判別出来ない。

    お世話になっております。 JavaScriptの本を購入しました。 その本にブラウザ判定のスクリプトが掲載されており、それをそのままアップしたところ、私はIE6なのにIE4と判別されてしまいました。 下記がそのスクリプトです。 ちなみに、私はXPのIE6です。 このスクリプトはこれで完璧なのでしょか? また、出来ましたら、このスクリプトを試していただけたらと思うのですが・・・よろしくお願い致します。 <script language="JavaScript"> <!-- if( navigator.appVersion.charAt(0)==4){window.location.href = "nn4.html"} // NN Ver4 の場合 if( navigator.appVersion.charAt(0)==5){window.location.href = "nn5.html"} // NN Ver5 の場合 if( navigator.appVersion.charAt(0)==6){window.location.href = "nn6.html"} // NN Ver6 の場合 } if( navigator.appName.charAt(0)=="M"){ if( navigator.appVersion.charAt(0)==2){window.location.href = "ie2.html"} // IE Ver2 の場合 if( navigator.appVersion.charAt(0)==3){window.location.href = "ie3.html"} // IE Ver3 の場合 if( navigator.appVersion.charAt(0)==4){window.location.href = "ie4.html"} // IE Ver4 の場合 if( navigator.appVersion.charAt(0)==5){window.location.href = "ie5.html"} // IE Ver5 の場合 if( navigator.appVersion.charAt(0)==6){window.location.href = "ie6.html"} // IE Ver6 の場合 } //--> </script> <noscript>JavaScript を使用しています。JavaScript を有効にしてください。</noscript>

  • Javaを実行しようとすると「ページでエラーが発生しました」?

    メモ帳でHPを作成中です。 Javaで <script language="javascript"> <!--- function abc(){window.open("name.html","abc", "toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no ,resizable=yes, width=500,height=180")} //---> </script> <a href="url" target="abc">name</a>として 文字をクリックすると小窓が開くようにしたいのです。、過去の質問でも同様のものがあり、その通りにしたみました。しかし、文字をクリックしてもアンダーバーのところに「ページでエラーが発生しました」という文字がでて小窓が開きません。 ドリーム小説と言うものの、名前を入力するページだけを別にしたいのですが・・・ IE6.0 OSは98です。 分かる方、回答をよろしくお願いします。

  • document.write が作動してくれません!

    /* ブラウザが 「IE Version 5 以上」 または 「Netscape Navigator Version 4 以上」 のときに文字列を出力するつもりで、以下のscriptを書きましたが、IE Version 6 のパソコンで文字列が出力されません。 (エラーにはなりません。インターネット・セキュリティは既定レベルの「中」です。) 何が間違いなのかお教えくださいませ。 <script type="text/javascript"> <!-- if ( ( (navigator.appName.indexOf("Microsoft") >=0)&&(navigator.appVersion.charAt(0) >4) ) || ( (navigator.appName.indexOf("Netscape") >=0)&&(navigator.appVersion.charAt(0) >3) ) ) { document.open(); document.write("「パソコン申し込み」 では、入力していただいた貴下の個人情報を送信する際に、情報の暗号化をおこないます。"); document.close(); } //--> </script> */

  • javascriptの長いコードをサブルーチン化する方法

    初歩的な質問かもしれませんが <a href="javascript:void(0);" onclick="window.open ('note.htm','_blank','location=no,menubar=no,scrollbars=yes, resizable=yes,status=no,width=200,height=100,top=0,left=0')">※注釈※</a> …というHTMLをたくさんの箇所に挿入したいのですが,これではあまりにも長い ので,該当ファイルのヘッダ内に <head> <SCRIPT language="javascript" type="text/javascript" src="../script/winopen.js"></script> </head> みたいにwinopen.jsとして収め,必要箇所で呼び出したいのですが, (1) winopen.jsファイル内 と (2) HTMLの<body></body>内 には 具体的にどのように記述したらよいものでしょうか?

  • NN4.7で小窓が開かない

    JavaScriptで小窓を表示するようにしているのですが、 IE6、NN7だと動くのですが、NN4.7だと動いてくれません。 どこが問題なのかわからないのでアドバイスをお願いします。 <script language="javascript"> <!-- function winopen(url){ var w = window.open(url,'小窓','width=700,height=600,toolbar=0,menubar=0,location=0,status=0,scrollbars=no'); } --> </script> <a href="javascript:winopen('./ex01.html');">ex01</a> <a href="javascript:winopen('./ex02.html');">ex02</a> <a href="javascript:winopen('./ex03.html');">ex03</a> fanctionの部分をHEADではなくBODYに書いているのですが、 それが問題という可能性はありますか?

  • 親ウインドウのアドレスバーを消したい

    親ウインドウから子ウインドウを呼び出す時に、 LinkWin=window.open('newwin.html','_blank','MENUBAR=NO,SCROLLBARS=1,RESIZABLE=1'); として、アドレスバーを消す事が可能ですが、 それを親ウインドウでやりたいのです。 ソースを以下のように書いてみたのですが IE6.0では動作しません。 親ウインドウでは無理なのでしょうか? if(navigator.appName == 'Netscape'){ //自分自身をwindow.openで開いたと思わせる window.open('','_top','menubar=no,resizable=1'); } else if(navigator.appName =='Microsoft Internet Explorer'){ var w=window.open('','_top','menubar=no,resizable=0'); w.opener=window } 以上、宜しくおねがいします。

  • なぜ「ページでエラーが発生しました。」?

    字数が限られているので、「なぜエラーなのですか?」 -----ここからhead区間 <!--JavaScript Function window.onerror = null; var ver4 = (navigator.appVersion.charAt(0) >= "4"); var NN4 = ver4 && (navigator.appName.charAt(0) == "N"); var IE4 = ver4 && (navigator.appName.charAt(0) == "M"); var NN3 = ((navigator.appVersion.charAt(0) == "3") && (navigator.appName.charAt(0) == "N")); if(NN3 || NN4 || IE4){ var img_b = new Array(); img_b[0] = new Image(); img_b[0].src = "kbw.jpg" img_b[1] = new Image(); img_b[1].src = "ao.jpg" img_b[2] = new Image(); img_b[2].src = "bcw.jpg" img_b[3] = new Image(); img_b[3].src = "sm.gif" } function B_in(nam,num){ if(NN3 || NN4 || IE4) document.images[nam].src = img_b[num].src; } function B_out(nam,num){ if(NN3 || NN4 || IE4) document.images[nam].src = img_b[num].src; return false; } // END ---> </SCRIPT> </head> -----ここからbody <BODY onLoad="time(0)"> <SCRIPT LANGUAGE="JavaScript"> <!--- ここから表示 document.write(TodayIMG(0)); //end ---> </SCRIPT>

  • 小窓に余白が・・・

    <script language="JavaScript"><!-- var pop; function newwindow(URL,WIDTH,HEIGHT,LEFT,TOP){ pop = window.open(URL,"PopWindow","directories=0,location=0, menubar=0,toolbar=0,status=0,resizable=0, scrollbars=0"+",width="+WIDTH+",height="+HEIGHT+", left="+LEFT+",top="+TOP); pop.focus();pop.moveTo(LEFT,TOP);pop.resizeTo(WIDTH,HEIGHT); } function closenewwin(){ if (pop){ pop.close(); } } // --></script> jpg画像を設定しておりますが、小窓に余白ができてしまいます。 画像ぴったりに納めたいのですが、小窓のサイズを変えても 余白ができてしまいます。 どのようにすれば余白はなくなりますか?

  • 検索フォームでの結果を別窓にあるフレームに表示する方法を教えて下さい

    ホームページにプルダウン式の検索フォームを作っているのですが、検索結果を思うように表示することができなくて困っています。 検索フォームはindex.htmlに設置してあります。 kensaku.htmlというファイル(上下にフレーム分割してある)の下(nameはbottom)のフレームに検索結果を表示させたいと思っています。 どのように書いたらいいのか教えてください。 どうぞよろしくお願いします。 現在は普通の別窓での表示するになっています。 ↓↓↓↓↓ ////////// HOMEPAGEを開く function openHome(selected){ window.open(getHomeURL(selected),'h'+selected,"location=1,menubar=1,toolbar=1,status=1,scrollbars=1,resizable=1"); } function getHomeURL(selected){ return 'http://' + Engine_Info[selected].home; } ////////// 検索結果を開く function openSearchURL(selected,keyword){ switch ( navigator.appName.charAt(0) ){ case 'N': if ( !navigator.userAgent.indexOf("Gecho") ){ keyword = escape(keyword); } break; default: break; } window.open(getSearchURL(selected,keyword),'s'+selected,"location=1,menubar=1,toolbar=1,status=1,scrollbars=1,resizable=1") } function getSearchURL(selected,keyword){ if ( Engine_Info[selected].option != '' ){ return 'http://' + Engine_Info[selected].engine + '?' + Engine_Info[selected].option + '&' + Engine_Info[selected].key + '=' + keyword; } else { return 'http://' + Engine_Info[selected].engine + '?' + Engine_Info[selected].key + '=' + keyword; } }

専門家に質問してみよう