アプリ版:「スタンプのみでお礼する」機能のリリースについて

いつもお世話になっております。

イントラネット上のコンテンツにおいて
TOP画面のサイズを固定したいと思っております。

子ウィンドウはオープン時に"resizable=no"で
サイズ固定できますが
親ウィンドウではどうでしょうか?

動作は以下のようになればよいのですが

obj = window.open(selfUrl, name, "resize=no");
self.opener = self;
self.close();

諸事情により
ブラウザのプロセスIDが変化してしまうと困るので
「親ウィンドウを開きなおす」技は使えません・・・。

CSSで
max-width:1024px;min-width:1024px;
と試してみてもサイズ固定にはならないしで
煮詰まってしまいました。

何か方法をご存知の方
いらっしゃいましたら宜しくお願い致します。

A 回答 (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>

この回答への補足

ご回答ありがとうございます。

私の環境でご提案頂いた方法を試してみたところ
(windowsXP SP2 IE6.0)

やはりスクリプトエラーで
「アクセスが拒否されました」と出力されてしまいました。
(発生箇所"resizeBy"メソッド)

私の環境が悪いのでしょうか?

補足日時:2006/04/14 09:15
    • good
    • 0

自ウインドウの"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です。


実現困難なようなので、
仕様を変更する方向で働きかけてみようと思います。
ありがとうございました。

補足日時:2006/04/13 17:15
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!