トップページ >  javascript >  ウィンドウをリサイズする
初版2008/04/16: 最終更新日2013/01/08
  ウィンドウをリサイズする
目次
ウィンドウをリサイズする
ソース
Chromeでリサイズする
ウィンドウをリサイズする
新しく開いたウィンドウをリサイズするにはresizeToメソッドを使用します。
window.open();で開いたウィンドウオブジェクトに対してresizeTo(横幅,縦幅)を指定します。
以下のボタンを押すと新しいウィンドウが600×600でオープンされます。
絶対パスで指定すると「アクセスが拒否されました」と表示され正常にリサイズできませんでしたが、相対パスで指定すると正常にリサイズされます。

 

ソース
<html>
<head>
<title></title>
</head>
<body>
<input type="button" value="オープン" name="button1" onclick="a()">
<script language="JavaScript">
<!--
function a(){
    obj = window.open("../../index.html","target");
    obj.resizeTo(600,600);
}
// -->
</script>
</body></html>

Chromeでリサイズする
Chromeでリサイズするには、window.open時にoption指定をしないと新規ウィンドウで開かないため(新規タブで開く)、resizeToがきかないようです。
また、open時の座標とresizeTo時の座標が変わってしまうため、一瞬、ウィンドウの位置が変わってしまいます。
そのため、thisを渡してx座標y座標を元の位置指定にしています。



Chromeにも対応するならソースは以下のように記述します。IE8でも正常に動作します。

<input type="button" name="button1" value="オープン" onclick="b(this);" />
<script type="text/javascript">
<!--
function b(obj){
    obj = window.open("../../index.html","target","width=600,height=600",left=
             "+obj.offsetLeft + ",top=" + obj.offsetTop);// 1行で書いてください
    obj.resizeTo(600,600);
}
// -->
</script>