![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.1ベストアンサー
- 回答日時:
Windows+一部のブラウザのみでの確認なので自信なし。
function client_resizeTo(width, height) {
if (document.layers) { // for NN4
window.resizeTo(width, height);
window.resizeTo(width, height);
} else {
window.resizeTo(width*2, height*2);
var client_width = document.body.clientWidth;
var client_height = document.body.clientHeight;
window.resizeTo(width*3-client_width, height*3-client_height);
}
}
NN4 での resizeTo() は、引数をクライアント領域のサイズとしてウィンドウサイズを調整するようです。
しかし、リサイズによってウィンドウメニューの折り返しが行われると、高さが足りなくなってしまいます。
このため、幅調整用、高さ調整用の2回分の resizeTo() を実行しています。
IE および NN7 では、document.body.clientWidth (または .clientHeight)でクライアント領域のサイズを知ることができます。
これを使い、目的のサイズで resizeTo() を行った後のクライアント領域のサイズを測り、不足分を調整して再度 resizeTo() を実行します。
これだけなら
window.resizeTo(width, height);
var client_width = document.body.clientWidth;
var client_height = document.body.clientHeight;
window.resizeTo(width+width-client_width, height+height-client_height);
でいいのですが、これでは1度目のリサイズで入ってしまったスクロールバーが消えた分の調整ができないため、1度目のリサイズでスクロールバーが出ない大き目のサイズにして調整を行っているのです。
ちなみに client_resizeTo() は、BODYタグの onLoad イベント時、またはそれ以降でないと利用できません。
また、ページマージンが0になるよう、BODYタグを調整しておく必要があります。
(つまり、BODYタグに topmargin=0 leftmargin=0 marginwidth=0 marginheight=0 を指定しておく。)
※スクリプトのインデントに全角空白を使っているので、コピペするときは半角空白かタブに置き換えてください。
この回答へのお礼
お礼日時:2003/06/30 09:46
ご回答ありがとうございます。
IEでは上手くいきましたが、NN6ではうまくいきません。clientWidthをサポートしていないようで。
すごくヒントになりましたので、大変嬉しく思っています。ちょっといじってみたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- モニター・ディスプレイ パソコンでスクリーンショットしたもの(HP)を印刷しました。 3 2022/07/03 16:39
- Excel(エクセル) 【エクセルマクロ】既に開いているIEの、サイズや表示位置を変更するには 4 2022/12/01 22:57
- その他(ソフトウェア) 画像の拡大率を固定したまま次の画像を表示出来るビューアを探しています 2 2022/05/13 17:19
- Outlook(アウトルック) Outlook 受信メールの文字サイズ変更 2 2022/10/14 14:41
- Visual Basic(VBA) 動かなくなってしまった古いVBAを動くようにしたい 8 2022/09/20 13:57
- Word(ワード) パソコンのソフト WordとExcelについて教えてください。 Excelで作った図形をWordにコ 1 2022/04/01 23:27
- Word(ワード) Wordでの印刷サイズについて A4の原稿をB5サイズで出力したいとき、 印刷から用紙サイズの指定か 4 2022/04/30 09:51
- CAD・DTP vectorworks、winとmacでデータを共有する場合 1 2023/02/20 16:41
- HTML・CSS (Javascript)印刷するファイルに応じて印刷プレビュー画面で用紙を自動的に切り替えたい!! 2 2022/04/11 12:04
- Excel(エクセル) コントロールにリンクするセルが選択されない 3 2022/06/12 14:37
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLのWHEREで全てを質問する方法
-
新しいウィンドゥを最大化で立...
-
小窓を表示する時に、必ず右上...
-
window.openでフルスクリーン表...
-
<a href="#" …>の意味を教えて...
-
bodyにidをつける理由は何ですか?
-
openerの関係が崩れてしまった...
-
undefinedが表示されてしまう
-
jQuery GalleryViewスライドショー
-
外部ファイルでBODYのonloadイ...
-
(Javascript)印刷するファイル...
-
インラインフレームをドラッグ...
-
フレームを解除する方法
-
wordpressでアコーディオンメニ...
-
プルダウンメニューを別ファイ...
-
相対パスと絶対パスの速度
-
twitter widgetが表示されない
-
CSSでテキストを開いてふわっと...
-
javascriptとApacheの設定
-
時間によってリンク先を変える...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
新しいウィンドゥを最大化で立...
-
あなたのXAMPPのdashboard内のj...
-
SQLのWHEREで全てを質問する方法
-
htmlファイルを開いた時の画面...
-
外部からのjs呼び出しについて。
-
window.openで404エラーがでます
-
window.openでフルスクリーン表...
-
サブウインドウの高さを自動で...
-
小窓を表示する時に、必ず右上...
-
町内会での不倫
-
サブフレームがうまく出来ません。
-
別ウィンドウをサイズ指定するには
-
javascriptでのポップアップ表...
-
いろんなサイズの新しいウィン...
-
色の指定で配列を使いたい
-
ポップアップブロック付きのブ...
-
IF文で該当の処理を通らない
-
ビルダーで小窓にスクロールバ...
-
モニターサイズによるページ振...
-
JAVAでリンクボタンを作成して...
おすすめ情報