プロが教えるわが家の防犯対策術!

背景条件
(1) 複数のGIF画像をサブウィンドウとして開きたい
(2) GIF画像のサイズ=300x300固定,サブウィンドウのサイズは500x500固定とする
(3) GIFの枚数だけ小窓用HTMLを用意するのは非効率なのでイヤ
(4) サブウィンドウに表示させた画像の下には,全て[閉じる]ボタンを用意する
(5) サブウィンドウは常に手前で表示したい
(6) クライアントの環境はIE6限定

とあります.ここで,(1)(5) を満足する方法としてshowModelessDialogという
関数(?)があることを知りました.
さらに(2)を実現するため,JS内にHTMLを書き出す記述を設けようと思いました.

WWWにある情報を拾い集め,サンプルを切り貼りしてみたところ,
一応,下記で,スクリプトエラーなく機能しているようには見えます.
誤りやスリム化についてコメントお願いできますと幸いです.

<html><head>
function openKomado(url,HLP1,HLP2) {
var WinD11=showModelessDialog(url,window, 'center:yes;scroll:no;status:no;help:no;edge:raised;dialogWidth:415px;dialogHeight:420px',HLP1,HLP2);
WinD11.document.write('<html>\n<head>\n\t<title>');
WinD11.document.write(HLP1);
WinD11.document.write('</title>\n</head>\n<body>\n');
WinD11.document.write('\t<img src="');
WinD11.document.write(HLP2);
WinD11.document.write('">\n');
WinD11.document.write('\n<center>\n\t<input type="button" name="close" value="閉じる" onclick="window.close();">\n</center>\n</body>\n</html>');
WinD11.document.close();
}
</head>
<body>
<a href="javascript:function voi(){};voi()" onClick="msg1='図'; msg2='image.gif'; openKomado('fig1.gif',msg1,msg2,500,500)">開く</a>
</body>
</html>

A 回答 (1件)

単にwithを使って WinD11.documentを減らしただけです(^^;



<script type="text/javascript">
function openKomado(url,HLP1,HLP2) {
var WinD11=showModelessDialog(url,window, 'center:yes;scroll:no;status:no;help:no;edge:raised;dialogWidth:415px;dialogHeight:420px',HLP1,HLP2);
with (WinD11.document) {
write('<html><head><title>' + HLP1 + '</title></head><body>');
write('<img src="' + HLP2 + '">');
write('<center><input type="button" name="close" value="閉じる" onclick="window.close();"></center></body></html>');
close();
}
}
</script>
    • good
    • 0

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