- ベストアンサー
ウィンドウサイズ固定
いつもお世話になっております。 イントラネット上のコンテンツにおいて TOP画面のサイズを固定したいと思っております。 子ウィンドウはオープン時に"resizable=no"で サイズ固定できますが 親ウィンドウではどうでしょうか? 動作は以下のようになればよいのですが obj = window.open(selfUrl, name, "resize=no"); self.opener = self; self.close(); 諸事情により ブラウザのプロセスIDが変化してしまうと困るので 「親ウィンドウを開きなおす」技は使えません・・・。 CSSで max-width:1024px;min-width:1024px; と試してみてもサイズ固定にはならないしで 煮詰まってしまいました。 何か方法をご存知の方 いらっしゃいましたら宜しくお願い致します。
- kawakami2005
- お礼率72% (24/33)
- HTML
- 回答数2
- ありがとう数0
- みんなの回答 (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>
その他の回答 (1)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
自ウインドウの"resizable=no"は、できなかったように思います。 IEの場合、サイズ変更開始でイベントが起きるので window.onresize=function(){ alert("サイズの変更はできません");return false; }; とすれば、サイズ変更を邪魔できます。 (私なら、こんなサイトには2度と来ませんが) Firefox では、onresize イベントは、サイズが変更されてから起こるようなので、 onresize イベントハンドラの中で、 window.resizeTo(1024, XXX); を使って強制的に戻るようにするとかすればいいかもしれません。 (どっちにしてもそんなサイトはイヤですが)
補足
ご回答ありがとうございます。 仰るとおり、サイズ固定のサイトはエチケット違反であるのは承知しております。 ただ、今回は社内サイトであり、お客様の要望ですので・・・。 さて、本題の方ですが > 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(); }
- 締切済み
- JavaScript
- ポップアップウィンドウがサイズが固定されているのは何故ですか?
お世話になります。ポップアップのサイズ変更について質問させてください。ページ内にあくつも画像があり、クリックするとテーブルの各画像の詳細ページがポップアップページとして出てくるという動作を作ったのですが、このポップアップを最初は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 } 以上、宜しくおねがいします。
- ベストアンサー
- JavaScript
- ウィンドウサイズの固定(変更できなくする)
ウィンドウサイズの指定(resize to)は出来るのですが、リサイズしたウィンドウサイズを固定して変えられない様にするにはどうしたらいいのでしょうか? すみませんが解る方お願い致します。
- ベストアンサー
- JavaScript
- ポップアップウィンドウのサイズを自動調整するには?
ポップアップウィンドウを開く時に、ウィンドウのサイズを「ヨコ幅固定、タテ幅自動調整」のような形にできないものか……と思っています。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')">
補足
ご回答ありがとうございます。 私の環境でご提案頂いた方法を試してみたところ (windowsXP SP2 IE6.0) やはりスクリプトエラーで 「アクセスが拒否されました」と出力されてしまいました。 (発生箇所"resizeBy"メソッド) 私の環境が悪いのでしょうか?