JavaScript in Tabelle funktioniert nicht

abe_exoddus

Grünschnabel
Hallo zusammen,

ich habe ein (Verständnis-)Problem mit einem Script, das zu einer Tabelle gehört... In der Beispiel-Tabelle, die ich mir heruntergeladen habe funktioniert es einwandfrei. Als ich die Tabelle erweitert habe klappt's nicht mehr...

Die Tabelle enthält verkleinerte Darstellungen von Bildern, die bei Aktivierung des OnMouseOver-Events in einer "zentralen" Zelle als größeres Bild dargestellt werden.

Ich möchte auf der Seite zwei weitere Tabellen darstellen, in denen jeweils das gleiche Skript aktiv ist - nur eben mit unterschiedlichen Bildern.

Der Original-Quelltext ist hier (wer Interesse hat, kann meine Quelltext-Änderungen auch bekommen):
Code:
<html>

<head>

</head>

<body BACKGROUND="../../background/fliesen-04.jpg">

<p align="center">

<table border="5" bordercolor="#000000" cellspacing="0" cellpadding="0" bgcolor="#808080" width="652">
    <!-- empty grey row -->
    <tr align="center">
        <td>
            <font color="#000000" size="3">
                <b>Meine Schlangen</b>
            </font>
        </td>
    </tr>

        <script language="JavaScript">
        <!--
        var image0 = new Image();
            image0.src = "./Koenig0.jpg";
            image0.height = 188;
        var image1 = new Image();
            image1.src = "./Koenig1.jpg";
            image1.height = 188;
        var image2 = new Image();
            image2.src = "./Koenig2.jpg";
            image2.height = 188;
        var image3 = new Image();
            image3.src = "./Koenig3.JPG";
            image3.height = 188;


        function showImage(whichImage) {
        
			var objMainImage = eval('document.MainImage');
			var objNewImage = eval('image' + whichImage);
            objMainImage.src = objNewImage.src;
            objMainImage.height = objNewImage.height;
        }

        //-->
        </script>
<tr align="center">
<td>
<table border="0" cellpadding="0" cellspacing="0" height="109">
<tr>
<td colspan="5" align="center">
<a href="javascript:showImage(0)" onmouseover="status=''; return true;">1</a>&nbsp;-&nbsp;<a href="javascript:showImage(1)" onmouseover="status=''; return true;">2</a>&nbsp;-&nbsp;<a href="javascript:showImage(2)" onmouseover="status=''; return true;">3</a>&nbsp;-&nbsp;<a
href="javascript:showImage(3)" onmouseover="status=''; return true;">4</a></td>
</tr>
<tr height="109"><td valign="middle" align="right">(1)&nbsp;</td><td width="60" align="center" valign="middle">
<a href="javascript:showImage(0)" onmouseover="showImage(0); status=''; return true;"><img src="./Koenig0.jpg" width="60" height="45"  border="2"></a>
</td><td height="198" rowspan="2" width="270" align="center" valign="middle">
<img name="MainImage" src="./Koenig0.jpg" width="250" border="5">
</td>
<td width="60" align="center" valign="middle">
<a href="javascript:showImage(2)" onmouseover="showImage(2); status=''; return true;"><img src="./Koenig2.jpg" width="60" height="45" border="2"></a>
</td>
<TD valign="middle" align="left">&nbsp;(3)</TD>
</tr>
<tr height="109"><td valign="middle" align="right">(2)&nbsp;</td><td width="60" align="center" valign="middle">
<a href="javascript:showImage(1)" onmouseover="showImage(1); status=''; return true;"><img src="./Koenig1.jpg" width="60" height="45"  border="2"></a>
</td>
<td width="60" align="center" valign="middle">
<a href="javascript:showImage(3)" onmouseover="showImage(3); status=''; return true;"><img src="./Koenig3.JPG" width="60" height="45" border="2"></a>
</td>
<TD valign="middle" align="left">&nbsp;(4)</TD>
</tr>
</table>
</td>
</tr>
</p>
</table>

</body>

</html>

Danke für Eure Hilfe!
 
Hi abe,

hab mir jetzt nicht Dein Script genau angeschaut, aber ich meine mal ein ähnliches Problem gehabt zu haben.

Dieses Javascript zählt die einzelnen images die oben links anfangen, soll heissen, wenn Du in einer Tabelle ein Bild zur Navigation hast, was nichts mit dem MouseOver zu tun hat, sondern nur zur Deko da ist, in diesem Script mitgezählt wird.
Vielleicht hängt es damit zusammen, dass es nicht mehr klappt, nachdem Du einige Zeilen, vielleicht mit Bildern, dazugefügt hast.

Schau mal nach, ansonsten poste mal Deine Änderungen.

Gruß

Torsten
 
JavaScript/Tabelle

Habe Deine Hinweise nicht ganz "verinnerlichen" können...

Hier meine angepasste HTML-Seite...

Wo klemmt es?

Danke für die Antwort(en)....

Code:
<html>

<head>

</head>

<body BACKGROUND="../../background/fliesen-04.jpg">

<p align="center">

<table border="5" bordercolor="#000000" cellspacing="0" cellpadding="0" bgcolor="#808080" width="652">
    <!-- empty grey row -->
    <tr align="center">
        <td>
            <font color="#000000" size="3">
                <b> Ghost Kornnatter (Pantherophis guttatus)</b>
            </font>
        </td>
    </tr>

        <script language="JavaScript">
        <!--
        var image0 = new Image();
            image0.src = "./Rot0.jpg";
            image0.height = 188;
        var image1 = new Image();
            image1.src = "./Rot1.jpg";
            image1.height = 188;
        var image2 = new Image();
            image2.src = "./Rot2.jpg";
            image2.height = 188;
        var image3 = new Image();
            image3.src = "./Rot3.JPG";
            image3.height = 188;

        var image4 = new Image();
            image4.src = "./Weiss0.jpg";
            image4.height = 188;
        var image5 = new Image();
            image5.src = "./Weiss1.jpg";
            image5.height = 188;
        var image6 = new Image();
            image6.src = "./Weiss2.jpg";
            image6.height = 188;
        var image7 = new Image();
            image7.src = "./Weiss3.JPG";
            image7.height = 188;

        var image8 = new Image();
            image8.src = "./Koenig0.jpg";
            image8.height = 188;
        var image9 = new Image();
            image9.src = "./Koenig1.jpg";
            image9.height = 188;
        var image10 = new Image();
            image10.src = "./Koenig2.jpg";
            image10.height = 188;
        var image11 = new Image();
            image11.src = "./Koenig3.JPG";
            image11.height = 188;

        function showImage(whichImage) {
        
			var objMainImage = eval('document.MainImage');
			var objNewImage = eval('image' + whichImage);
            objMainImage.src = objNewImage.src;
            objMainImage.height = objNewImage.height;
        }

        //-->
        </script>
<tr align="center">
<td>
<table border="0" cellpadding="0" cellspacing="0" height="109">
<tr>
<td colspan="5" align="center">
<a href="javascript:showImage(0)" onmouseover="status=''; return true;">1</a>&nbsp;-&nbsp;<a href="javascript:showImage(1)" onmouseover="status=''; return true;">2</a>&nbsp;-&nbsp;<a href="javascript:showImage(2)" onmouseover="status=''; return true;">3</a>&nbsp;-&nbsp;<a
href="javascript:showImage(3)" onmouseover="status=''; return true;">4</a></td>
</tr>
<tr height="109"><td valign="middle" align="right">(1)&nbsp;</td><td width="60" align="center" valign="middle">
<a href="javascript:showImage(0)" onmouseover="showImage(0); status=''; return true;"><img src="./Rot0.jpg" width="60" height="45"  border="2"></a>
</td><td height="198" rowspan="2" width="270" align="center" valign="middle">
<img name="MainImage" src="./Rot0.jpg" width="250" border="5">
</td>
<td width="60" align="center" valign="middle">
<a href="javascript:showImage(2)" onmouseover="showImage(2); status=''; return true;"><img src="./Rot2.jpg" width="60" height="45" border="2"></a>
</td>
<TD valign="middle" align="left">&nbsp;(3)</TD>
</tr>
<tr height="109"><td valign="middle" align="right">(2)&nbsp;</td><td width="60" align="center" valign="middle">
<a href="javascript:showImage(1)" onmouseover="showImage(1); status=''; return true;"><img src="./Rot1.jpg" width="60" height="45"  border="2"></a>
</td>
<td width="60" align="center" valign="middle">
<a href="javascript:showImage(3)" onmouseover="showImage(3); status=''; return true;"><img src="./Rot3.JPG" width="60" height="45" border="2"></a>
</td>
<TD valign="middle" align="left">&nbsp;(4)</TD>
</tr>
</table>
</td>
</tr>

<table border="5" bordercolor="#000000" cellspacing="0" cellpadding="0" bgcolor="#808080" width="652">
    <!-- empty grey row -->
    <tr align="center">
        <td>
            <font color="#000000" size="3">
                <b>Weiße Erdnatter (Elaphe o.lindheimeri)</b>
            </font>
        </td>
    </tr>

<tr align="center">
<td>
<table border="0" cellpadding="0" cellspacing="0" height="109">
<tr>
<td colspan="5" align="center">
<a href="javascript:showImage(4)" onmouseover="status=''; return true;">1</a>&nbsp;-&nbsp;<a href="javascript:showImage(5)" onmouseover="status=''; return true;">2</a>&nbsp;-&nbsp;<a href="javascript:showImage(6)" onmouseover="status=''; return true;">3</a>&nbsp;-&nbsp;<a
href="javascript:showImage(7)" onmouseover="status=''; return true;">4</a></td>
</tr>
<tr height="109"><td valign="middle" align="right">(1)&nbsp;</td><td width="60" align="center" valign="middle">
<a href="javascript:showImage(4)" onmouseover="showImage(4); status=''; return true;"><img src="./Weiss0.jpg" width="60" height="45"  border="2"></a>
</td><td height="198" rowspan="2" width="270" align="center" valign="middle">
<img name="MainImage" src="./Weiss0.jpg" width="250" border="5">
</td>
<td width="60" align="center" valign="middle">
<a href="javascript:showImage(6)" onmouseover="showImage(6); status=''; return true;"><img src="./Weiss2.jpg" width="60" height="45" border="2"></a>
</td>
<TD valign="middle" align="left">&nbsp;(3)</TD>
</tr>
<tr height="109"><td valign="middle" align="right">(2)&nbsp;</td><td width="60" align="center" valign="middle">
<a href="javascript:showImage(5)" onmouseover="showImage(5); status=''; return true;"><img src="./Weiss1.jpg" width="60" height="45"  border="2"></a>
</td>
<td width="60" align="center" valign="middle">
<a href="javascript:showImage(7)" onmouseover="showImage(7); status=''; return true;"><img src="./Weiss3.JPG" width="60" height="45" border="2"></a>
</td>
<TD valign="middle" align="left">&nbsp;(4)</TD>
</tr>
</table>
</td>
</tr>


<table border="5" bordercolor="#000000" cellspacing="0" cellpadding="0" bgcolor="#808080" width="652">
    <!-- empty grey row -->
    <tr align="center">
        <td>
            <font color="#000000" size="3">
                <b>Königspython (Python regius)</b>
            </font>
        </td>
    </tr>

<tr align="center">
<td>
<table border="0" cellpadding="0" cellspacing="0" height="109">
<tr>
<td colspan="5" align="center">
<a href="javascript:showImage(8)" onmouseover="status=''; return true;">1</a>&nbsp;-&nbsp;<a href="javascript:showImage(9)" onmouseover="status=''; return true;">2</a>&nbsp;-&nbsp;<a href="javascript:showImage(10)" onmouseover="status=''; return true;">3</a>&nbsp;-&nbsp;<a
href="javascript:showImage(11)" onmouseover="status=''; return true;">4</a></td>
</tr>
<tr height="109"><td valign="middle" align="right">(1)&nbsp;</td><td width="60" align="center" valign="middle">
<a href="javascript:showImage(8)" onmouseover="showImage(8); status=''; return true;"><img src="./Koenig0.jpg" width="60" height="45"  border="2"></a>
</td><td height="198" rowspan="2" width="270" align="center" valign="middle">
<img name="MainImage" src="./Koenig0.jpg" width="250" border="5">
</td>
<td width="60" align="center" valign="middle">
<a href="javascript:showImage(10)" onmouseover="showImage(10); status=''; return true;"><img src="./Koenig2.jpg" width="60" height="45" border="2"></a>
</td>
<TD valign="middle" align="left">&nbsp;(3)</TD>
</tr>
<tr height="109"><td valign="middle" align="right">(2)&nbsp;</td><td width="60" align="center" valign="middle">
<a href="javascript:showImage(9)" onmouseover="showImage(9); status=''; return true;"><img src="./Koenig1.jpg" width="60" height="45"  border="2"></a>
</td>
<td width="60" align="center" valign="middle">
<a href="javascript:showImage(11)" onmouseover="showImage(11); status=''; return true;"><img src="./Koenig3.jpg" width="60" height="45" border="2"></a>
</td>
<TD valign="middle" align="left">&nbsp;(4)</TD>
</tr>
</table>
</td>
</tr>


</p>
</table>

</body>

</html>
 
Hi abe,

hat was länger gedauert, zeit zu finden, aber versuche es mal mit diesem Script.

Alternative habe ich Dir auch ein .zip File angehangen, damit Du es direkt testen kannst.
Ich denke, das sollte Dein Problem lösen.

Gruß

Torsten


Code:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Mouseover</title>
</head>
<script language=javascript> 
function wechsel(a,bild) 
{ 
window.document.images[a].src=bild; 
} 
</script> 

<body> 
<!--1. bilder wechsel--> 
<img src=loeschen.gif width="18" height="19" onmouseover="wechsel(0,'up.gif')"onmouseout="wechsel(0,'loeschen.gif')"> 

<!--2. bilder wechsel--> 
<img src=visitenkarte.gif width="32" height="32" onmouseover="wechsel(1,'up.gif')"onmouseout="wechsel(1,'visitenkarte.gif')"> 

<!--3. bilder wechsel--> 
<img src=bild1.jpg onmouseover="wechsel(2,'bild2.jpg')"onmouseout="wechsel(2,'bild1.jpg')"> 
</body>
</html>
 
Hi,

danke für das Script. Es sieht ähnlich aus, wie das, was in meiner Tabelle ist.

Ich glaube, das Problem ist die Position des Scripts im Code. Sollte er in den Tabellenkopf? Bei drei Tabellen in jeden Tabellenkopf? In den BODY? Wobei das Script bei keiner der genannten Varianten funktioniert hat. Ausser in der ersten Version mit nur einer Tabelle...

Noch ne Idee? Ansonsten probier ich die Seite selbst nochmal neu zu basteln...

THX...
 
Hi abe,

das Problem ist nicht die Position Deines Codes.

Mein Script sieht zwar ähnlich aus, hat aber den Unterschied dass es funktioniert! ;)
Nimm das Beispiel, welches ich mitgeschickt habe und versuche Deine Tabelle damit umzubauen.
Wenn Du Probleme beim umsetzen hast, melde Dich nochmal und ich schicke Dir ein Beispiel mit Deiner Tabelle

Gruß

Torsten
 
HI xthetronx,

ich werde mein Bestes geben... ;)

Ansonsten komme ich auf Dein Angebot zurück und "belästige" Dich nochmal...
:-)

Danke erstmal...
 
@xthetronx

So, da bin ich wieder... Das mit dem Script klappt soweit ganz gut...
Allerdings bezieht sich das OnMouseOver-Event auf das gleiche Bild. In meiner Tabelle soll es so sein, dass ich mit dem Mauszeiger über ein kleines Vorschaubild in Zelle x fahre und dieses dann in Originalgröße in Zelle y dargestellt wird.

Kannst Du mir bitte nochmal auf die Sprünge helfen?

Gruß,
abe
 
@xthetronx

Ich hab den Fehler in meinem Script gefunden... Die Bezeichnung der "zentralen" Zellen war dreimal gleich (name="MainImage"). So konnte die Variable nicht richtig zugeordnet werden...

Danke für die Mühe!
 

Neue Beiträge

Zurück