電子書籍の厳選無料作品が豊富!

親htmlのクリックで、jpg小画面を多数表示させるJavaScriptで悩んでいます。
どなたかの知識で、お助けください。
http://amenti.usamimi.info/windowopen.html
にあるものを応用しました。<body><div><table>の<tr><td>部に横に並べた4個のサムネイルのjpg画像に、jpg元画像へのリンク指示をしています。

■問題点
1. 最初のサムネイルをクリックすると、jpg元画像と「ファイルが見つかりませんでした」のエラーメッセージも同時に出る。
2. 2番目のサムネイルをクリックしても、最初と同じjpgを表示してしまう。3/4番目は正常に表示する。

■記述状態
1. <head>~</head>部は、~windowopen.htmlにある記述をそのまま移しました。以下です。

<script type="text/javascript">
<!--
function m_win(url,windowname,width,height) {
var features="location=no, menubar=no, status=yes, scrollbars=yes, resizable=yes, toolbar=no";
if (width) {
if (window.screen.width > width)
features+=", left="+(window.screen.width-width)/2;
else width=window.screen.width;
features+=", width="+width;
}
if (height) {
if (window.screen.height > height)
features+=", top="+(window.screen.height-height)/2;
else height=window.screen.height;
features+=", height="+height;
}
window.open(url,windowname,features);
}
// --></script>

2. <body><div><table>の<tr><td>部に横に並べた4個のサムネイルのjpg画像に、リンク指示をしています。~windowopen.htmlにある記述を少し変えただけです。以下です。
(style 記述省略)

<a href="album/aaaa.jpg" onclick="m_win(this.href,null,656,496); return false;">
<img src="album/aaaa_thumb.jpg" width="120" border="0" alt="ああああ"></a>

<a href="album/bbbb.jpg" onclick="m_win(this.href,null,656,496); return false;">
<img src="album/bbbb_thumb.jpg" width="120" alt="いいいい"></a>

<a href="album/cccc.jpg" onclick="m_win(this.href,null,656,496); return false;">
<img src="album/cccc_thumb.jpg" width="120" alt="うううう"></a>

<a href="album/dddd.jpg" onclick="m_win(this.href,null,656,496); return false;">
<img src="album/dddd_thumb.jpg" width="120" alt="うううう"></a>

■変更点と疑問

1. ~windowopen.htmlでは、<a href="~"は、htmlですが、上記では直接jpgになっています。

2. onclick="m_win(this.href,null,656,496); return false;" 文は、オリジナルは第1のリンクが、
具体名ですが、上記ではすべて null にしました。

変更点が少ないのにエラーが出て困っています。
小画面の表示される位置など、自分にとってジャストなJavaScriptなので、何とかこれをきちんと使い
たいので、どこが悪いか教えてください。

A 回答 (1件)

質問文に書いてあるものをそのままコピーしてやってみましたが、


ちゃんと別窓ですべてエラーなく正常に表示されました。
(Windows7 IE8,Firefox3.6.12)
なので、私にはどこが悪いのか分かりませんが、
ここでオリジナルと決定的に違うのはCSSを追加してる点ですね?
問題点を切り分ける意味で、CSSをなくしてやってみてはいかが?
    • good
    • 0
この回答へのお礼

すみませんでした。
Javascript自体に問題があるのではなく、小生のコピペの際に小さな英記号が抜け落ちていたのが、
原因でした。お騒がせして申し訳ありません。
小生のシステム:Win Vista、Firefox 1.92、 IE7でもOKでした。

ただ、表示する画像が640x480なのですが、
Firefox 1.92では、onclick="m_win(this.href,null,656,496); return false;" の
開くWindowのサイズ指定で、少しの余白が均等にあり、綺麗におさまります。
IE7では、スクロールバー非表示ですが、幅相当の余白が、右と下に付いてしまいます。
onclick="m_win(this.href,null,640,480); return false;" でサイズ指定をすると、
IE7ではOKですが、Firefox 1.92では、微妙に余白が異なり表示サイズが96%となります。

解決策を当たってみます。
見つからなかったら、IE7でおかしくならない方を選びます(不本意ですが)。

複雑な質問に、丁寧に回答いただき感謝!!!です。

お礼日時:2010/11/24 09:43

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