• ベストアンサー

スクリーン真ん中に移動

トップページのリンクをクリックすると 小窓がでてくるんです。 それを、出てきた後にスクリーンの真ん中に 自動的に移動させてたいのですが どうすればいいのですか?

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

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

前の記述は一例として記述したもので、そのまま埋め込んだ場合、スクリプトが読み出された順に処理されるようになっていました。 ですので、ページロード時に自動的にスクリプトが実行されるという状況になっていたものと思います。 質問内容と少し逸れた回答になってましたね。 申し訳ありません。 リンクをクリックしたことを拾ってスクリプトを起動したい場合は、まずスクリプトを以下のように書き換えてみて下さい。 <script type="text/javascript"><!-- hh=200;//小窓の高さ ww=400;//小窓の横幅 xx=(screen.width-ww)/2; //表示位置のx座標設定 yy=(screen.height-hh)/2; //表示位置のy座標設定 function openWin(){ window.open("***.htm","sub","width="+ww+", height="+hh+", top="+yy+", left="+xx); } //--></script> また、小窓を開くきっかけになるリンクは、 <a href="#" onClick="openWin(); return false;">小窓</a> もしくは <a href=javascript: openWin();">小窓</a> と記述してみて下さい。 これでおそらくは意図通りに動いてくれるのではないかと思います。 失礼しました。

fullow
質問者

お礼

こんにちわ! 分かり易い説明ありがとうございます! 無事、設置できました! すばらしぃいい!本当に真ん中になってるんですね!

その他の回答 (2)

noname#199778
noname#199778
回答No.2

小窓を開く側でウィンドウの表示位置を制御する場合は、ウィンドウを開く側のページに、 <script type="text/javascript"><!-- hh=200;//小窓の高さ ww=400;//小窓の横幅 xx=(screen.width-ww)/2; //表示位置のx座標設定 yy=(screen.height-hh)/2; //表示位置のy座標設定 window.open("***.htm","sub","width="+ww+", height="+hh+", top="+yy+", left="+xx); //--></script> という感じに記述すればよいと思います。 読み出される側のページでウィンドウを移動させたい場合は、呼び出される側のページ内に <script type="text/javascript"><!-- xx=(screen.width-window.outerWidth)/2; yy=(screen.height-window.outerHeight)/2; window.moveTo(xx,yy); //--></script> という感じに記述すればよいと思います。 ただし、こちらの場合、この記述ではIEでは動きません(IEではwindow.outerWidth, window.outerHeightをサポートしていないため)。 もし開かれるウィンドウサイズが決まっているのでしたら、そのウィンドウの幅・高さをそれぞれwindow.outerWidth, window.outerHeightの代わりに記述することで、IEにも対応させることが可能です。 参考になれば幸いです。

fullow
質問者

補足

御回答ありがとうございます なんでかわからないのですが、 一番上のタグをいれましたところ、 その小窓のリンクがあるぺいじが ロードされた時点でかってに 小窓が出てきてしまいます。 リンクをクリックさせてから、 小窓をだして、真ん中に位置するように したいのです。

noname#3546
noname#3546
回答No.1

var x=(screen.width-w)/2 var y=(screen.height-h)/2 こんな感じでウインドウの初期X,Y座標を指定すればOK。 ちなみにW,Yは小窓の幅と高さです。

fullow
質問者

お礼

御回答ありがとうございます このタグはどのようにいれればいいんでしょうか?

関連するQ&A