人に聞けない痔の悩み、これでスッキリ >>

以下は、detail.htmlを新しいウィンドウで開く際、
・左上隅に
・幅800pxで
・ユーザーの画面の高さを取得して、縦一杯に(=getScreenHEIGHT←前に当BBSで教わりました)
という条件になっています。

これが、ローカルでは思惑通り動きますが、
FTPでサーバーにアップすると、「縦一杯」という指定が効きません。
たぶん、「width=800,height=+(getScreenHEIGHT()+20)),top=0,」のあたりの
プラス(+)とかクォーテーション(')の打ち方などに誤りがあるのではないかと
思いますが、正しい書き方を教えてください。


<html>
<head>
<script type="text/javascript">
function getScreenHEIGHT(){
if(!!window.screen){
return screen.height-80;
}else{
return null;
}
}
</script>
</head>
<body>
<a href="javascript:void(0);" onclick="window.open('./detail.html','_blank','location=no,menubar=no,scrollbars=yes,resizable=yes,status=no,width=800,height=+(getScreenHEIGHT()+20)),top=0,left=0')">リンク</a>
</body>
</html>

このQ&Aに関連する最新のQ&A

A 回答 (2件)

オプション指定の部分は、'~' の文字列ですから、関数の結果を挿入しようと思ったらいったん文字列から出す必要があります。


文字列として連結してしまわないように、計算させてから文字列で連結するということで、
(わかりやすさのために前後を含めると)
width=800,height='+(getScreenHEIGHT()+20)+',top=0
のように変更する必要があると思います。
    • good
    • 0
この回答へのお礼

おかげさまで解決しました。

'を入れてみたり+をいれてみたりいろいろ(根拠なく(^^;)試しましたが、
ご教示いただけてよかったです。

ご提示のものと比較してみたところ、
本番環境ではなんか、無用な閉じカッコもあったりで、不注意もありました。

ありがとうございました。

お礼日時:2006/08/18 16:12

ローカルで動くというのがなぜかわかりませんが、


ご自分でも書かれていますとおり、シングルコーテーションや+に誤りがあります。

>'location=no,menubar=no,scrollbars=yes,resizable=yes,status=no,width=800,height=+(getScreenHEIGHT()+20)),top=0,left=0'
'location=no,menubar=no,scrollbars=yes,resizable=yes,status=no,width=800,height='+(getScreenHEIGHT()+20)+',top=0,left=0'
に変えてみてください。
    • good
    • 0
この回答へのお礼

herokoさん、ありがとうございました。
#1さんの御礼にも書きましたが、
まったくご教示の通りの顛末でした・・

貴重なアドバイスありがとうございました。

お礼日時:2006/08/18 16:13

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


人気Q&Aランキング