画像をクリックすると閉じる別ウインドウ

このQ&Aのポイント
  • こんにちは。上記タイトルのページを作りたいと思っています。親ページには画像リンクにはこんな感じで作ってあります。この画像ボタンがいらないのでここを抜いて画像をクリックすると子ウインドウが閉じるようにしたいのですが、うまくいきません。このサイトもいろいろ見ましたがよくわかりませんでした。どなたかご教示下さい。よろしくお願いします。
  • 上記タイトルのページを作成したいと考えています。親ページには画像リンクがありますが、その画像をクリックした際に子ウインドウが閉じるようにしたいです。しかし、どのように取り組んでいいかわからず、困っています。ご教示いただけると幸いです。
  • タイトルのページを作成しようとしています。親ページには画像リンクがあり、その画像をクリックした際に子ウインドウが閉じるようにしたいです。しかし、実現方法がわからず困っています。どなたかご教示いただけないでしょうか?よろしくお願いします。
回答を見る
  • ベストアンサー

画像をクリックすると閉じる別ウインドウ

こんにちは。上記タイトルのページを作りたいと思っています。 親ページには <script language="JavaScript"> <!-- // var new1,win1p; function CenterOpen (img,Xv,Yv) { if (win1p=="on") { if (new1.closed) {} else {new1.close();} } win1p = "on"; Xw=Xv+50; Yw=Yv+80; new1=window.open("", "newwin", "resizable=1,width="+Xw+",height="+Yw+""); if(navigator.appVersion.charAt(0)>=3){new1.focus()}; new1.document.clear(); new1.document.write("<html><head><meta http-equiv=Content-Type content=\"text/html; charset=x-sjis\"><title>View Window</title></head><body bgcolor=#000000><table width=100% height="+Yv+" border=0 cellpadding=0 align=center valign=center>"); new1.document.write("<tr><td align=center valign=center><img src="+img+" width="+Xv+" height="+Yv+"></td></tr></table>"); new1.document.write("<center><form><input type=button value='close' onClick='window.close()'></form></center>"); new1.document.write("</body></html>"); new1.document.close(); } //--> </script> 画像リンクには <a href="JavaScript:onClick=CenterOpen('●●.jpg',サイズ,サイズ);"> こんな感じで作ってあります。 この new1.document.write("<center><form><input type=button value='close' onClick='window.close()'></form></center>"); 画像ボタンがいらないのでここを抜いて 画像をクリックすると子ウインドウが閉じるようにしたいのですが、うまくいきません。このサイトもいろいろ見ましたがよくわかりませんでした。 どなたかご教示下さい。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

<img src=…> の部分に onClick='window.close()' を付けたらどうでしょうか

moonmama
質問者

お礼

で!できましたぁ!! とっても助かりました。ありがとうございました♪

関連するQ&A

  • Microsoftのクリップギャラリーのように元サイズのプレビューを新しいウインドウに表示したい

    サムネイル画像をクリックすると、別ウインドウが開いて元サイズの画像を見せるページを作りたいんです。 サムネイルをクリックするたびに新しいwindowが次々に立ち上がるタイプのものは作れたのですが、別のサムネイルをクリックするとプレビュー用ウインドウの内容が変わるタイプのものが欲しいので困ってます。 サンプルを改造してみたのがこれです。 function tile(imgname){ win2=window.open("","","width=350,height=200,resizable=yes") if (win2){ win2.focus() win2.document.open() win2.document.write("<head><title>"+bgname+"</title></head>") win2.document.write("<body><img src="+'"'+imgname+'"'+">") win2.document.write("<TABLE WIDTH='100%' HEIGHT='100%'><TR><TD VALIGN='bottom' ALIGN='center'><FORM><INPUT TYPE='button' NAME='ok' VALUE='Close' onClick='window.close()'></FORM></TD></TR></TABLE>") win2.document.write("</body>") win2.document.close() } あと、サムネイル画像につけるリンク先HTMLファイルの書き方も良くわかりません。 スクリプトのほうに<head>と<body>タグがあるので<html>タグだけ書いておけば良いんでしょうか?

  • javascriptで別ウインドウを開いたのですが背景設置が上手くいきません。

    いつもお世話になっております。 JavaScriptを使用し別ウインドウで画像を表示させているのですが、 そのウインドウの背景が上手く設定できません。 どのように編集すればよいでしょうか? 現在の状態は以下の通りです。 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <title>aaa</title> <script language="javascript"> <!-- function OpenWindow(){ var width = document.images['00'].width + 228; var height = document.images['00'].height +254; subWin = window.open("","subWin","status=no,menubar=no,toolbar=no,scrollbars=no,resizable=yes,screenX=0,screenY=0,width=" + width + ",height=" + height + '"'); with(subWin.document) { open(); write("<html><head><title>sample1</title></head>"); write("<body onload='window.resizeTo( document.images[00].width + 40,document.images[00].height + 120)'><div align='center'><img id='00' src='b/1b.jpg'><br>"); write("<button type='button' onclick='window.close()'>閉じる</button></body></div></html>"); close(); } } --> </script></head> 宜しくお願いします。

  • 画像の別ウィンドでの拡大表示をやりたいが・・・

    Kootsukiと申します。 初めて質問させていただきます。 javascriptを勉強しはじめたものです。 ブログで画像の別ウィンドでの拡大表示をやりたくjavascriptでfunctionを定義しました。しかし、エラーになってしまいうまくいきません。どなたか原因を教えていただけないでしょうか。 まずhtmlは以下です。 <img src="http://...AAAAs.jpg" onclick="largeImage(this)"> 次にfunctionの定義は以下です。 ブログ上のサムネール画像をクリックしたときには、lergeImageで900×675のウィンドゥを開き、そこにオリジナル画像を100%縮小(?)で表示します。同時に画面の左上に拡大マーク画像を表示し、そこがクリックされたら同じウィンドゥを使って縮小なしで再表示しようと思っています。しかし、拡大マーク画像をクリックすると、ランタイムエラー:行番号0で「オブジェクトを指定してください」とランタイムエラーになってしまいます。どこがおかしいのでしょうか。よろしくお願いします。 <script type="text/javascript"> <!-- var lisrc = ""; function largeImage(img){ var objImg = new Image(); objImg.src = img; var img_wh_hi = objImg.height / objImg.width; var base_wh_hi = 675 / 900; img.src.match(/^(.+)s\.([^\.]+)$/); lisrc = RegExp.$1 + "." + RegExp.$2; newWin = window.open("","","top=10,left=10,width=900,height=675,scrollbars=yes").document; newWin.open(); newWin.write('<html><head><title>拡大画像<\/title><style type="text/css"><!-- body {padding:0;margin:0;text-align:center;} #blank {position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;} --><\/style><\/head>'); newWin.write('<body>'); newWin.write('<p><img src="' + lisrc + '" width="100%" onClick="window.close()"alt="クリックするとウィンドゥを閉じます。"><img src="http://blog-imgs-19.fc2.com/....../kakudai.jpg" onClick="maxImage()" alt="さらに拡大" style="position:absolute; top:10px; left:150px; z-index=2"><\/p>'); newWin.write('<\/body><\/html>'); newWin.close(); } function maxImage(){ newWin = window.open("","","top=10,left=10,width=900,height=675,scrollbars=yes").document; newWin.open(); newWin.write('<html><head><title>拡大画像<\/title><style type="text/css"><!-- body {padding:0;margin:0;text-align:center;} #blank {position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;} --><\/style><\/head>'); newWin.write('<body>'); newWin.write('<p><img src="' + lisrc + '" onClick="window.close() alt="クリックするとウィンドゥを閉じます"><\/p>'); newWin.write('<\/body><\/html>'); newWin.close(); } // --> </script>

  • JavaScript 画像のサイズを取得して、それに適したウインドウを表示したい

    画像のサイズを取得して、それに適したウインドウを表示したいと思っています。 今のところ、下記のように実装しましたがローカルで実行した際に、サイズを取得できない場合があります。 (document.write(size);で、width=0,height=0 と返ってくる) また、サーバ上で実行するとブラウザが応答なしになってしまいます…。 どのように解決すればよいか、良い案がありましたら是非ご教授下さい。 宜しくお願い致します。 function popup_img(url, title){ var tImg = new Image(); tImg.src = url; x = tImg.width; y = tImg.height; document.write(size);  //for debug if(x!=0 && y!=0){ var size = "width=" + x + ", height=" + y; a = window.open("","",size); a.document.write("<HTML>\n"); a.document.write("<TITLE>",title,"</TITLE>\n"); a.document.write("<BODY TOPMARGIN=0 LEFTMARGIN=0 MARGINHEIGHT=0 MARGINWIDTH=0>\n"); a.document.write("<IMG SRC=",url,">\n"); a.document.write("</BODY></HTML>\n"); a.document.close(); a.moveTo((a.screen.availWidth / 2 - tImg.width / 2), (a.screen.availHeight / 2 - tImg.height / 2)); } } // --> </SCRIPT> </head> <BODY> <a href="#" onClick="popup_img('TEST.jpg', 'SOME TITLE')">TEST</a>

  • アラートをクリックした後、別ウインドウを閉じる

    下記はCGIのフォームから画像を送信する時、別ウインドウに画像を表示して、アラートでOKかキャンセルかを確認するJavaScriptです、 OKの場合別ウインドウを自動的に閉じたいのですが、 print <<"END_HERE"; <SCRIPT language="JavaScript"> <!-- function check() { imag = "file:///"+document.Form1.file_1.value.replace(/\\\\/g, '/'); var new1 = window.open('','new1', 'width=500, height=400'); new1.document.writeln("<HTML lang='ja'>"); new1.document.writeln("<HEAD>"); new1.document.writeln("<META HTTP-EQUIV=\\"Content-Script-Type\\" CONTENT=\\"text/javascript\\">"); new1.document.writeln("<TITLE>画像確認<"+"/TITLE>"); new1.document.writeln("<"+"/HEAD>"); new1.document.writeln("<BODY ><CENTER>"); new1.document.writeln("<img src=\\""+imag+"\\">"); new1.document.writeln("<SCRIPT type='text/javascript'>"); new1.document.writeln("<!-"+"-"); new1.document.writeln("var conf = confirm('この画像でOKですか?');"); new1.document.writeln("//-"+"->"); new1.document.writeln("<"+"/SCRIPT>"); new1.document.writeln("<"+"/CENTER>"); new1.document.writeln("<"+"/BODY>"); new1.document.writeln("<"+"/HTML>"); new1.document.close(); return new1.conf; } //--> </SCRIPT> END_HERE よろしくお願いします。

  • 1ページに大量のWindow.openの最適化方法

    サムネイル下のボタンクリックで拡大写真表示をさせたいと思っています。 現在以下の方法です。 -------------------------- <SCRIPT language="JavaScript"> <!---------------------- function open1(){ wo1=window.open("","WindowOpen1", "toolbar=no,location=no,directories=no,status=no,menubar=yno,scrollbars=no,resizable=no,width=430,height=460"); wo1.document.write("<html><head><title>拡大写真</title>"); wo1.document.write("<script language='JavaScript'> "); wo1.document.write("function good(){ "); wo1.document.write(" window.close() } "); wo1.document.write("</script></head><body><center> "); wo1.document.write("<IMG src='img/03-02/001.jpg' border='0'> "); wo1.document.write("<br><form> "); wo1.document.write("<input type='button' name= 'ok ' value=' Close ' onClick='good()'>"); wo1.document.write("</form></center></body></html> "); wo1.document.close(); } //-----------------> これと <FORM><INPUT type="button" name="no1 " value=" 拡大写真 " onclick="open1()"></FORM> これの組み合わせ --------------------------- で、これがそのページに30個ほど必要なんです。 それぞれ違うのは、もちろん画像だけなんです。 function open1(){~~}を個数分書くしか方法は無いんでしょうか? 何か簡素化する方法があったらお願いします。

  • 投稿画像の確認画面

    下記は画像を投稿したとき投稿画像を確認するPerlコードです、 別画面に投稿した画像が表示されたのですが最近画像が表示されなくなりました、何処か間違っているのか分かりませんよろしくお願いします。 <SCRIPT language="JavaScript"> <!-- var CR = "\\r"; var LF = "\\n"; var tag_change; var amp_change; var space_change; function check2(Form1){ var new2 = window.open('','new2','scrollbars=yes, resizable=1, WIDTH=100, HEIGHT=100'); new2.moveTo(0,0); new2.resizeTo(700,800); new2.focus(); whole = 2; h_mode = 1; space_change = 1; tag_change = 1; amp_change = 1; honbun = 1; new2.document.writeln("<HTML lang='ja'>"); new2.document.writeln("<HEAD>"); new2.document.writeln("<META HTTP-EQUIV=\\"Content-Script-Type\\" CONTENT=\\"text/javascript\\">"); new2.document.writeln("<TITLE>画像コメント確認<"+"/TITLE>"); new2.document.writeln("<"+"/HEAD>"); new2.document.writeln("<BODY BACKGROUND='./kabe/k2.gif'>"); new2.document.writeln("<FONT SIZE=4 COLOR='NAVY'>"); idata = window.document.Form1.pr.value; new2.document.writeln(lineX(idata)); new2.document.writeln("<"+"/FONT>"); new2.document.writeln("<CENTER>"); imag = "file:///" + document.Form1.file_1.value.replace(/\\\\/g, '/'); new2.document.writeln("<img src=\\""+imag+"\\" alt='画像がありません'>"); new2.document.writeln("<"+"/CENTER>"); new2.document.writeln("<SCRIPT type='text/javascript'>"); new2.document.writeln("<!-"+"-"); new2.document.writeln("var sw = confirm('画像、コメントOKですか?');"); new2.document.writeln("<"+"/SCRIPT>"); new2.document.writeln("<"+"/BODY>"); new2.document.writeln("<"+"/HTML>"); new2.document.close(); if (sw = new2.sw) { new2.close(); // new2 はレスと画像を確認したwindow var new1 = window.open('','new1', 'width=50, height=50,resizable=1'); new1.close(); } else { new2.close(); // new1 は画像確認したwindow var new1 = window.open('','new1', 'width=50, height=50,resizable=1'); new1.close(); } return sw; }

  • 変数を送る方法?(CGIの「**.cgi?mode=00&name=aa.jpg」的な物)

    1ページに複数の画像があり、画像クリックで拡大写真を小窓で開くようにしたいです。 枚数分ページ(htmlファイル)を準備するのは避けたいです。自動生成の方でやりたいと思います。 その際、少しでも入力を減らしたいと思うのですが… 現在は以下のようになっています。 --- <SCRIPT language="JavaScript"> <!-- function wopen1(){ wo1=window.open("","WindowOpen1", "width=800,height=700"); wo1.document.write("<html><head><title>画像名</title>"); wo1.document.write("<script language='JavaScript'>"); wo1.document.write("function good(){"); wo1.document.write("window.close() }"); wo1.document.write("</script>\n</head>\n<body>"); wo1.document.write("写真名-コメント"); wo1.document.write("<IMG src='写真パス'>"); wo1.document.write("<center>"); wo1.document.write("<form>"); wo1.document.write("<input type='button' name= 'ok ' value=' Close ' onClick='good()'>"); wo1.document.write("</form>"); wo1.document.write("</center>\n</body>\n</html>"); wo1.document.close(); } (これが写真枚数分) これと、 <A href="javascript:void(0)" onclick="wopen1()"><IMG src="サムネイルパス"~ これの組み合わせです。 これを、 wo1.document.write("<html><head><title>[CGIで言う所の$name的な表現]</title>"); と <A href="javascript:void(0)" onclick="wopen1([CGIで言う所の?name=00&pict=01.jpg的な表現])"><IMG src="写真サムネイルパス"~ で済ませたいのですが、可能でしょうか? その場合、どのように記述したらいいのでしょうか? 出来ればピンポイントで教えていただけるとありがたいのですが… よろしくお願いします。

  • フレームとイベントハンドラについて

    フレーム無しのページでは <FORM><INPUT TYPE="BUTTON" NAME="Type02" VALUE="閉じる" onClick="window.close()">  とか <img src="botan23.gif" width="35" height="11" onClick="window.close()">  で右上の×点を使わなくてもウィンドウを閉じることができますが、フレームで分割されているものの閉じ方がわかりません。 http://nshk.lomo.jp/purple/purple.html の場合 home というgifに onClickでウィンドウを閉じるようにさせたいのですがどう書けばよいのでしょうか?よろしくお願い致します。

    • ベストアンサー
    • Java
  • 日替わり画像ポップアップ表示

    javascriptを使って日替わりで なんとか画像を表示する事ができましたが その画像をclickしたら拡大させるにはどうしたらいいのでしょうか 調べても日替わり画像までしかなくて 困ってます ご存知の方 教えてください。 phpや別の言語を使うのでしょうか <script type="text/javascript" language="javascript"> <!-- d=new Date(); date=d.getDate(); document.open(); document.write('<td width="230" height="219" bordercolor="#003333"><img src="img/himekuri/'); document.write(date); document.write('.jpg" alt="今日のカレンダー" width="230" height="219"></td>'); document.close(); // --> </script> 今現在の内容です

専門家に質問してみよう