• 締切済み

スワップイメージとウィンドウオープンのエラー

javaスクリプト初心者です。 スワップイメージのあるページで、 新しいウィンドウをjavaスクリプトでオープンした後に、スワップイメージのエラーで表示されません。 ローカルではこの現象は起きないのですが、サーバーへアップするとこの現象が見られます。 なぜだか全然分かりません。 ソースは以下の通りです。 function MM_swapImgRestore() { //v3.0 var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; } function MM_swapImage() { //v3.0 var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3) if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];} } function MM_openBrWindow(theURL,winName,features) { //v2.0 window.open(theURL,winName,features); } ・・・ *****スワップイメージ********** <a href="javascript:;" onMouseUp="MM_swapImage('img','','img/***.jpg',1)"><img src="img/---.jpg" alt="●●" name="img01" width="100" height="150" border="0"></a> *****ウィンドウオープン(複数あります)***** <a href="#" onClick="MM_openBrWindow('../abc.html','ABC','menubar=yes,scrollbars=yes,width=596,height=700')">ABCへのリンク</a> <a href="#" onClick="MM_openBrWindow('../def.html','DEF','menubar=yes,scrollbars=yes,width=596,height=700')">DEFへのリンク</a> DW2004MXのビヘイビアパネルから制作しました。 私の書き方が悪いのでしょうか? よろしくお願いいたします。

みんなの回答

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

MM_openBrWindow('../abc.html' … 上のフォルダに移動しているので MM_swapImage('img','','img/***.jpg',1)"> のフォルダの階層の位置が違っている・ のではないでしょうか

関連するQ&A

  • イメージマップのhoverについて

    イメージマップのhoverで困っています。 以下のようなJavaとHTMLで実装しているのですが、メニューhoge2 は問題なくhoverできるのですが、 イメージマップを使ったメニューhoge1がうまくいきません。 IEだとhoverするのですが、chromeではhoverしません。 【Javaスクリプト】 <script type="text/javascript"> <!-- function MM_swapImgRestore() { //v3.0 var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; } function MM_swapImage() { //v3.0 var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3) if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];} } //--> </script> 【HTML】 <ul> <!-- メニュー hoge1 --> <li><img src="hoge.jpg" border="0" alt="hoge1" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu1','','hoge_hover.jpg',1)" name="menu1" usemap="#prdlink" /> <map name="prdlink"> <area shape="rect" coords="20,40,75,80" href="./product/hoge1.html" alt="hoge1" /> <area shape="rect" coords="80,40,134,80" href="./product/hoge2.html" alt="hoge2" /> </map> </li> <!-- メニュー hoge2 --> <li><a href="top.html" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu2','','top_hover.jpg',1)"> <img src="top_off.jpg" alt="top" name="menu2" /></a> </li> </ul> なにぶん、前任者のソースを見よう見まねで修正しており、知識もないためご教示いただければと思っております。

    • ベストアンサー
    • HTML
  • 複数のウィンドウを開く方法

    javascriptが良くわかりません。 以下のソースで、レシピAをクリックすると別ウィンドウ(picture_a.html)、Bをクリックすると別ウィンドウ(picture_b.htmlというように設定したいのですが、レシピAをクリックしても、レシピBをクリックしても(picture_a.html)しか表示されません。 どこの記述が間違っているか、ご存知の方教えてください。 ---------------- <script language="JavaScript"> <!-- function MM_openBrWindow(theURL,winName,features) { //v2.0 window.open(theURL,winName,features); } //--> </script> ---------------- <body> <a href="picture_a.html" onClick="MM_openBrWindow('picture_a.html','picture_a,'scrollbars=yes, width=500,height=500');return false;"> <p><img src="img/recipe_a.jpg" alt="レシピA" border="0"><br> <br> レシピA</p> </a> <a href="picture_b.html" onClick="MM_openBrWindow('picture_b.html','picture_b,'scrollbars=yes, width=500,height=500');return false;"> <p><img src="img/recipe_a.jpg" alt="レシピB" border="0"><br> <br>レシピB</p></a> </body> ---------------

  • Javascript ポップアップウィンドウについて

    初歩的なことだとは思いますが、教えてください。 ポップアップウィンドウで画像を表示するためのリンクを以下のように記述して使っていますが、 ポップアップウィンドウ内に余白が出ます。(ウインドウ枠と画像の間) ウインドウの左上(0,0)の位置に画像を持ってくるにはどうしたらいいのでしょうか。 調べたものをいくつか試してみましたが、どれもうまくいきませんでした。 よろしくお願いします。 -------------------- ■<head>内 <script type="text/javascript"> <!-- function MM_openBrWindow(theURL,winName,features) { //v2.0 window.open(theURL,winName,features); } //--> </script> ■<body>内 <a href="img/test.gif"><img alt="" src="~.gif" onclick="MM_openBrWindow('img/test.gif','test','scrollbars=yes,width=950,height=400')" /> </a> ------------------------- もしくは、 ■<head>内 <script type="text/javascript"> <!-- function WindowOpen_01(){ window.open('test.gif','test','scrollbars=yes,width=1150,height=350,left=0,top=0'); } //--> </script> ■<body>内 <a href="javascript:WindowOpen_01()"><img src="img/table_off.gif" alt="" width="320" height="55" class="mar_t_10" onmouseover="this.src='img/table_ban_on.gif'" onmouseout="this.src='img/table_off.gif'" /></a>

  • ポップアップウインドウが立ち上がる時にスクロールしないでほしい方法

    JavaScriptを使用して画像をクリックしポップアップウインドウを立ち上げると、スクロールして下の方に下がっていた親ウインドウは、なぜかまたページのトップへズズズいと勝手にあがっています。 Macでは確認されませんが、ウインドウズだと、その現象がおこるようです。 コードは以下のようになっています。 <script language="JavaScript"> <!-- function MM_openBrWindow(theURL,winName,features) { //v2.0 window.open(theURL,winName,features); } //--> </script> で、クリックする画像についているコードは以下。 <a href="#" onClick="MM_openBrWindow('toiawase_a/a_01.html','answer','scrollbars=yes,width=550,height=200')"><img src="img/toiawase/A.gif" width="20" height="20" alt="こたえ" border="0"></a> なお、当方の環境はMacOS9.1でエクスプローラー5、作成アプリはDreamweaver4です。 親ウインドウが下の方にスクロールしている状態のままポップアップウインドウを開く方法は何かないでしょうか? よろしく御教授くださいますよう、お願いします。

  • onclickで画面が固まる・・・らしいのですが

    サイトを制作していて、 headに、 <script language="JavaScript"> <!-- function MM_openBrWindow(theURL,winName,features) { //v2.0 window.open(theURL,winName,features); } //--> </script> 画像に、 <a href="javascript:;" onClick="MM_openBrWindow('img/001.jpg','','width=420,height=320')"><img src="img/001-s.jpg" alt="" width="110" height="110" border="0"></a> として、ポップアップするようにして、いくつかサムネイル画像を並べているのですが、 友人に見てもらったところ、2~3枚クリックすると、画面が固まって画面の左下の青いスペースに「ページでエラーが発生しました」とでるそうなんです。 パソコンはこの春に買ったノートパソコン(vista)みたいなんですが・・。 Vistaを使ったことがないのでわからないのですが、そんな症状はでるのでしょうか。 他の友人からはそんなことは言われてないのですが、そもそも私の書き方が間違えている???

  • 新しいウィンドウを中央に

    以下のソースで出来た新しいウィンドウを 画面の中央にもってきたい場合にはどのよう にカスタマイズすれば良いのでしょうか? どなたか申し訳御座いませんが、 教えて頂けないでしょうか? 宜しくお願い致します。 <html> <head> <script language="JavaScript" type="text/JavaScript"> <!-- function MM_openBrWindow(theURL,winName,features) { //v2.0 window.open(theURL,winName,features); } //--> </script> </head> <body> <a href="javascript:;" onClick="MM_openBrWindow('test2.html','test','width=300,height=300')">test</a> </body> </html>

  • スワップイメージでテキストがブラウザにより変わらない

    java初心者ですが、サイトを参考にマウスオーバーで画像を変更、テキストも変更できるようになったのですが、IE、operaでは、テキストが変わるのですが、firefox、googleでは変わらないことに気が付きました。見よう見まねで組み込みましたので、詳細な理解ができておりません。宜しくお願い致します。 +--------------------------------+ | | | 画像 | | | +--------------------------------+ | テキスト | <=左記(A・B・C)の画像を +----------+----------+----------+ mouseoverで上記の画像 | A | B | C |  とテキストが変わる +----------+----------+----------+ <head> <script type="text/javascript" src="../js/swap_gallery.js"></script> </head> <body> <table> <tr> <td><img src="A.jpg" name="pict" id="pict" /></td> </tr> <tr> <td id="pict_text">説明を表示します</td> </tr> <tr> <td> <table> <tr> <td><img src="A.jpg" name="btn" width="80" height="60" border="0" id="btn" onmouseover="chg_gallery('btn','','A.jpg','pict','','A.jpg',1,'説明A')" onmouseout="" /></td> <td><img src="B.jpg" name="btn" width="80" height="60" border="0" id="btn" onmouseover="chg_gallery('btn','','B.jpg','pict','','B.jpg',1,'説明B')" onmouseout="" /></td> <td><img src="C.jpg" alt="" name="btn" width="80" height="60" border="0" id="btn" onmouseover="chg_gallery('btn','','C.jpg','pict','','C.jpg',1,'説明C')" onmouseout="" /></td> </tr> </table> </td> </tr> </table> </body> function chg_gallery(a, b, c, d, e, f, g, cText){ swapImage(a,b,c,d,e,f,g); changeText(cText); } function swapImage() { var i,j=0,x,a=swapImage.arguments; document.sr=new Array; for(i=0;i<(a.length-2);i+=3) if ((x=findObj(a[i]))!=null){ document.sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2]; } } function findObj(n, d) { var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p); } if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=findObj(n,d.layers[i].document); if(!x && d.getElementById) x=d.getElementById(n); return x; } function changeText(cText) { if (document.all) { document.all["pict_text"].innerText = cText; } }

  • リモートロールオーバーで画像と一緒にテキストも切り替える方法

    初投稿です。 当方ジャバスクリプト初心者です。 Dreamweaverで画像(メイン画像が1枚、サムネイル画像が30枚ほどあります)のリモートロールオーバーをやったのですが、同時にテキスト(説明文5行ほど)も一緒に表示・切り替えする方法が知りたいです。 ジャバスクリプトで出来るのですか? 全く検討もつかないので、どうか宜しくお願いします。 ■以下現状のhtmlです。尚、練習用なのでスタイルシートは真っ白です。■ <head> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis" /> <title>無題ドキュメント</title> <link rel="stylesheet" type="text/css" href="index.css" /> <script type="text/JavaScript"> <!-- function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array(); var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}} } function MM_swapImgRestore() { //v3.0 var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; } function MM_findObj(n, d) { //v4.01 var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); if(!x && d.getElementById) x=d.getElementById(n); return x; } function MM_swapImage() { //v3.0 var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3) if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];} } //--> </script> </head> <body onload="MM_preloadImages('img/l_mitudera.jpg','img/l_aigou.jpg','img/l_jyuzo.jpg','img/l_kyobashi.jpg','img/l_noda.jpg')"> <img src="img/l_mitudera.jpg" width="300" height="260" name="main"><br /><br /> <img src="img/s_mitudera.jpg" width="75" height="65" onmouseover="MM_swapImage('main','','img/l_mitudera.jpg',1)" onmouseout="MM_swapImgRestore()" /> <img src="img/s_aigou.jpg" width="75" height="65" onmouseover="MM_swapImage('main','','img/l_aigou.jpg',1)" onmouseout="MM_swapImgRestore()" /> <img src="img/s_jyuzo.jpg" width="75" height="65" onmouseover="MM_swapImage('main','','img/l_jyuzo.jpg',1)" onmouseout="MM_swapImgRestore()" /> <img src="img/s_kyobashi.jpg" width="75" height="65" onmouseover="MM_swapImage('main','','img/l_kyobashi.jpg',1)" onmouseout="MM_swapImgRestore()" /> <img src="img/s_noda.jpg" width="75" height="65" onmouseover="MM_swapImage('main','','img/l_noda.jpg',1)" onmouseout="MM_swapImgRestore()" /> </body> </html>

  • 指がでてきません

    初めてJavaScriptを使って、画像・テキストをクリックしたら別ウィンドが開くようにしました。 大きさを整えたりスクロールを出したり、苦戦しやっとできたのですが、 OnMouseの時にポイントが「指」に変化しません。 「矢印」のままなので、HPを見た人はそこから別の所へリンクしていることが分からないのです。 比較するものがないのでどこをどう調べたらよいか見当がつかないのですが、どなたかヒントをいただけませんか? (参考までに載せてみます) <script language="JavaScript"> <!-- function MM_openBrWindow(theURL,winName,features) { //v2.0 window.open(theURL,winName,features); } //--> </script> ---本文中--- <img src="img/××.jpg" width="100" height="100" border="0" onMouseDown="MM_openBrWindow('××.htm','××','scrollbars=auto,resizable=auto,width=350,height=420')">

  • 複数の画像をランダム(シャッフル)表示

    10枚の画像を更新するごとに重複せず ランダム(シャッフル)させるには どうしたらいいですか? 理想は、JavaScriptは外部で読み込ませ、 そして下記のようにHTMLでリストを使い ランダム表示させたいのですが・・・ <ul> <li><a href="http://www.1/"><img src="s1.gif" /><br />あああ</a></li> <li><a href="http://www.2/"><img src="s2.gif" /><br />いいい</a></li> <li><a href="http://www.3/"><img src="s3.gif" /><br />ううう</a></li> <li><a href="http://www.4/"><img src="s4.gif" /><br />えええ</a></li> <li><a href="http://www.5/"><img src="s5.gif" /><br />おおお</a></li> <li><a href="http://www.6/"><img src="s6.gif" /><br />かかか</a></li> <li><a href="http://www.7/"><img src="s7.gif" /><br />ききき</a></li> <li><a href="http://www.8/"><img src="s8.gif" /><br />くくく</a></li> <li><a href="http://www.9/"><img src="s9.gif" /><br />けけけ</a></li> <li><a href="http://www.0/"><img src="s0.gif" /><br />こここ</a></li> </ul> 似たようなことをしているサイトがあったので 参考に貼り付けておきます。 function MM_findObj(n, d) { //v4.01 var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); if(!x && d.getElementById) x=d.getElementById(n); return x; } function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array(); var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}} } function MM_swapImgRestore() { //v3.0 var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; } function MM_swapImage() { //v3.0 var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3) if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];} }// JavaScript Document 詳しい方いましたら教えて頂けませんか? 宜しくお願いします。

専門家に質問してみよう