• ベストアンサー

ウィンドウサイズ固定

いつもお世話になっております。 イントラネット上のコンテンツにおいて TOP画面のサイズを固定したいと思っております。 子ウィンドウはオープン時に"resizable=no"で サイズ固定できますが 親ウィンドウではどうでしょうか? 動作は以下のようになればよいのですが obj = window.open(selfUrl, name, "resize=no"); self.opener = self; self.close(); 諸事情により ブラウザのプロセスIDが変化してしまうと困るので 「親ウィンドウを開きなおす」技は使えません・・・。 CSSで max-width:1024px;min-width:1024px; と試してみてもサイズ固定にはならないしで 煮詰まってしまいました。 何か方法をご存知の方 いらっしゃいましたら宜しくお願い致します。

  • HTML
  • 回答数2
  • ありがとう数0

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

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

前から気になっていた案件なので久しぶりに 真剣に考えていたら、こういう手を思いつきました。 どうでしょう? <html> <head> <script language=javascript> window.onresize=function(){ rw=document.body.clientWidth; rh=document.body.clientHeight; window.resizeBy((w - rw),(h - rh)) } function loadFunc(){ w=document.body.clientWidth; h=document.body.clientHeight; } </script> </head> <body onLoad="loadFunc()"> test </body> </html>

kawakami2005
質問者

補足

ご回答ありがとうございます。 私の環境でご提案頂いた方法を試してみたところ (windowsXP SP2 IE6.0) やはりスクリプトエラーで 「アクセスが拒否されました」と出力されてしまいました。 (発生箇所"resizeBy"メソッド) 私の環境が悪いのでしょうか?

その他の回答 (1)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

自ウインドウの"resizable=no"は、できなかったように思います。 IEの場合、サイズ変更開始でイベントが起きるので window.onresize=function(){ alert("サイズの変更はできません");return false; }; とすれば、サイズ変更を邪魔できます。 (私なら、こんなサイトには2度と来ませんが) Firefox では、onresize イベントは、サイズが変更されてから起こるようなので、 onresize イベントハンドラの中で、 window.resizeTo(1024, XXX); を使って強制的に戻るようにするとかすればいいかもしれません。 (どっちにしてもそんなサイトはイヤですが)

kawakami2005
質問者

補足

ご回答ありがとうございます。 仰るとおり、サイズ固定のサイトはエチケット違反であるのは承知しております。 ただ、今回は社内サイトであり、お客様の要望ですので・・・。 さて、本題の方ですが > Firefox では、onresize イベントは(以下略 社内サイトと言う事もあり、 対象ブラウザはIE6.0に統一されており この点は問題ありませんでしたので onResizeイベントハンドラ内で resizeToメソッドを呼び出そうと思ったのですが どうやら、当該イベントハンドラ内からでは アクセス不可能なようです。 (以前は出来た気がするので、修正が入ったのでしょうか??) ex1) window.onResize = window.resizeTo(xxx, xxx); スクリプトエラー:実装されていません。 ex2) window.onResize = resizeEv; function resizeEv() { window.resizeTo(xxx, xxx); return false; } スクリプトエラー:アクセスが拒否されました。 ちなみに、 windows XP SP2.IE6.0です。 実現困難なようなので、 仕様を変更する方向で働きかけてみようと思います。 ありがとうございました。

関連するQ&A

  • Chromでポップアップウィンドウのサイズ指定

    現在以下のような指定でポップアップウィンドウを開いているのですが Chromの場合、サイズ指定が無視されてしまいます。 良い方法ございましたら、ご教授いただけますでしょうか。 var subopen function subWinmap(){ subopen=window.open("map.html","map","resizable=yes,scrollbars=yes,menubar=yes,toolbar=no,directories=no,status=no,location=yes,width=700,height=800px"); if (!subopen.opener) subopen.opener=self; if (window.focus) subopen.focus(); }

  • ポップアップウィンドウがサイズが固定されているのは何故ですか?

    お世話になります。ポップアップのサイズ変更について質問させてください。ページ内にあくつも画像があり、クリックするとテーブルの各画像の詳細ページがポップアップページとして出てくるという動作を作ったのですが、このポップアップを最初は800px500pxで表すようにしたいのですが、閲覧者によってリサイズというかサイズを自由に変えることができるようにしたいのです。それで、下記のようにscrollbars=yes,resizable=yes,という記述をしたのですが、MacではsafariもIEも正常にリサイズできるのですが唯一Firefoxが正常に動かず、WinのIEではガッチリ固定されていてまったくスクロールができません。ブラウザによっては多少の違いはあると思うのですが、これはどうしてでしょうか?また、解決策はあるのでしょうか? どうかご教授ください。 function OPEN(lk){WIN=window.open(lk,'thank1','width=800,height=500')} 省略 <td valign="top" class="biyou">●A-1<a href="javascript:;" onClick="OPEN('001.html','scrollbars=yes,resizable=yes,width=600px,height=500px')"><img src="images/001.jpg" alt="適当な文章" width="203" height="140"></a></td>

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

    親ウインドウから子ウインドウを呼び出す時に、 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 } 以上、宜しくおねがいします。

  • ウィンドウサイズの固定(変更できなくする)

    ウィンドウサイズの指定(resize to)は出来るのですが、リサイズしたウィンドウサイズを固定して変えられない様にするにはどうしたらいいのでしょうか? すみませんが解る方お願い致します。

  • ポップアップウィンドウのサイズを自動調整するには?

    ポップアップウィンドウを開く時に、ウィンドウのサイズを「ヨコ幅固定、タテ幅自動調整」のような形にできないものか……と思っています。HTMLの知識は素人に毛が生えた程度なのですが、色々検索して現在は以下のようになっています。 <a href="#" onClick="window.open('sample.html','window1', 'width=380,height=,menubar=no,toolbar=no, location=no,directories=no, status=no,scrollbars=no,resizable=no')"> heightのところを指定していないのですが、ある一定の(最大の?)高さに固定されてしまいます。コンテンツは高さがそんなにないので、下の方にかなり余白がある感じです。コンテンツに応じて、高さを自動調整することはできますでしょうか? どうぞ宜しくお願いいたします。

    • ベストアンサー
    • HTML
  • 意図しない別ウインドウも同時に開いてしまいます

    <A HREF="#" onClick="window.open('mailer.htm','k2','toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, width=460, height=320')">お問い合わせ</a> 上記のようなリンクをトップページに作りました。 新しく開くウインドウ(mailer.htm)のサイズを固定しようと思ったためです。 目的通りmailer.htmは固定サイズのウインドウで開かれるのですが、それと同時にトップページ(index.htm)も(サイズは通常のサイズで)別ウインドウで開いてしまいます。 これはどういったものが問題なんでしょうか。 index.htmが別ウインドウでさらに開くというアクションが不要なのですが。。。 よろしくご教授ください。

    • ベストアンサー
    • HTML
  • 別ウインドウを開くようにしてるのですが

    こんにちは HPで画像を開く際に、下のようなjavascriptを使っています。 <SCRIPT Language="JavaScript"> <!-- function openwin(url) { /* 横幅400px、縦幅200pxのウインドウを開く */ w = window.open(url, 'win','width=400,height=200,status=no,scrollbars=yes,directories=no,menubar=no,resizable=yes,toolbar=no'); } //--> </SCRIPT> body部分に <a href="javascript:openwin('abc.htm')">いろは </a> としています。 で、お教え願いたいのは、別のサイズのウインドウにしたいときはどうしたらいいのでしょうか? 普段は400×200でいいのですが、たまに400×400にしたいときがあります。 方法を教えてくださいませ よろしくお願いいたします。

  • ブラウザサイズをフルサイズで表示させる方法

    ブラウザにタイトルバーとスクロールバーとスタートバー以外を表示しないページを作成したいのですが、 XPはOKで、WIN98でうまくいきませんでした。リンク先をクリックすると別ウィンドウが立ち上がる仕組みです。画面サイズに合わせて変わるようなのですが、WIN98では、スクロールバーが途中で切れてしまい、 一番下まで、綺麗に表示できませんでした。これ以外の方法でもかまいませんので、どなたかご伝授いただければと思います。 function wopen(url){ if(screen.width <= 640){ window.open(url,"_blank","resizable=no,menubar=no,status=yes,location=no,scrollbars=yes,toolbar=no,width=640,height=480,left=0,top=0") }elseif(screen.width <= 800){ window.open(url,"_blank","resizable=no,menubar=no,status=yes,location=no,scrollbars=yes,toolbar=no,width=800,height=600,left=0,top=0") }else if(screen.width <= 1024){ window.open(url,"_blank","resizable=no,menubar=no,status=yes,location=no,scrollbars=yes,toolbar=no,width=1024,height=768,left=0,top=0") }else if(screen.width <= 1152){ window.open(url,"_blank","resizable=no,menubar=no,status=yes,location=no,scrollbars=yes,toolbar=no,width=1152,height=864,left=0,top=0") }else if(screen.width <= 1280){ window.open(url,"_blank","resizable=no,menubar=no,status=yes,location=no,scrollbars=yes,toolbar=no,width=1280,height=1024,left=0,top=0") }else{ window.open(url,"_blank","resizable=no,menubar=no,status=yes,location=no,scrollbars=yes,toolbar=no,width=1600,height=1240,left=0,top=0") } return; } : <A href="javascript:wopen('/index.html')">

  • 子ウインドウのスタイルについて

    すみません、分かる方、教えてください。 次のようにJSP内のJavaScriptの関数にて、スタイルを指定しても子ウインドウがサイズ変更できてしまいます。 var style = "width=630,height=400,resizable=0, location=0, menubar=0,scrollbars=yes"; WindowObject = window.open(url,"MAIN",style); resizable=noとしても同様でした。scrollbars=noとした場合はスクロールバーなしとなるのですが何故でしょうか?

  • 子ウィンドウでウィンドウサイズ固定にしてtarget=

    HPを作っていて親ウィンドウに↓のように <script language="JavaScript"> <!-- function winopen(url){ win=window.open(url,"host","scrollbars=1,width=780,height=480"); } //--> </script> ~略~ <a href="dougu/keito.html" target="_blank" onClick="Javascript:winopen('dougu/keito.html');return false;"><img src="img/item-keito10.gif" width="50" height="38" border="0"> ウィンドウサイズを固定してtarget="_blank"で開いてさらにその子ウィンドウでも同じようにリンクを張って <script language="JavaScript"> <!-- function winopen(url){ win=window.open(url,"host","scrollbars=1,width=780,height=480"); } //--> </script> ~略~ <a href="../wash.html" target="_blank" class="style1" onClick="Javascript:winopen('../wash.html');return false;">こちら</a> とtarget="_blank"でウィンドウサイズを固定しして開きたいのですが同じウィンドウで開いてしまいます。 説明の仕方が分かりづらくてすみません。分からないようでしたら補足いたします。

専門家に質問してみよう