Mouseover in ganzer Tabellenzelle - geht nicht in Opera

Status
Nicht offen für weitere Antworten.

loopus

Grünschnabel
Hallo,

ich möchte ein Menü mit Mouseover Effekt (wie so viele hier...).
Dabei soll die ganze Zeile auch anklickbar sein und den Hintergrund verändern.

Klappt soweit ganz gut, nur in Opera nicht.

Folgenden Code verwende ich:

HTML:
<tr><td class="menu_mouseout"
                         onclick="document.location.href='#';"
                         onmouseout="this.className='menu_mouseout';"
                         onmouseover="this.className='menu_mousein';"><a
                         href="#"
                         class="menu_left">Impressum</a></td>
                 </tr>

und natürlich als CSS

HTML:
td.menu_mouseout {
                   background:#dddddd;
                 }
td.menu_mousein  {
                   background:#eeeeee;
                   cursor:pointer;
                 }

Bitte um Hilfe. Aus eurem Seitenquelltext werde ich nicht schlau...
 
loopus hat gesagt.:
Bitte um Hilfe. Aus eurem Seitenquelltext werde ich nicht schlau...

Das gehört mit zu dem besten was ich hier so gelesen habe ;-]

Um mal klar zu stellen, das Menü auf der linken Seite ist eine Liste, das Menü oben einfach nur eine Aneinanderreihung von Hyperlinks und keine Tabellenkonstrukte. Je nachdem würde ich Dir auch empfehlen, Deine Navigation mit Listen zu erstellen, Beispiele und Erklärungen gibts da: Listomatic
 
loopus hat gesagt.:
Bitte um Hilfe. Aus eurem Seitenquelltext werde ich nicht schlau...
Ich wusste gar nicht, dass der Seitenquelltext von tutorials.de für Dritte als 'copy + paste Vorlage' gedacht ist :suspekt:

Grundsätzlich funktioniert das Javascript-gesteuerte Tauschen der CSS-Klassen beim Überfahren eines HTML-Elements auch im Opera-Browser.

Da die Tabellenzelle mit dem Event-Handler onclick="document.location.href='#'" direkt als Link genutzt wird, ist das darin notierte a-Element überflüssig und erzeugt vermutlich durch a.menu_left:hover bzw. a:hover den Darstellungs-Konflikt im Opera.

HTML:
<td class="menu_mouseout" onmouseover="this.className='menu_mousein'" onmouseout="this.className='menu_mouseout'" onclick="document.location.href='impressum.html'">Impressum</td>
 
michaelsinterface hat gesagt.:
Ich wusste gar nicht, dass der Seitenquelltext von tutorials.de für Dritte als 'copy + paste Vorlage' gedacht ist :suspekt:

Anschauen und nachmachen kann aber nicht verboten werden ;)




Auch wenn ich in der Zelle nur Text stehen lasse, zeigt Opera weder eine Hand noch wechselt beim Klick auf die Zelle die Adresse.

Wie auch immer, bei Listomatic wurde ich fündig. Danke ;)
 
Hi, hab dasselbe Problem mit Opera (neueste version)
<tr class="class1" id="2" onmouseover="this.className='class2'">

das müßte doch nach AdamRiese gehen ?
 
  1. Was funktioniert nicht so, wie es eigentlich soll?

  2. Ist im Opera Javascript aktiviert?
Bei mir funktioniert's im Opera 8.5 mit aktiviertem Javascript einwandfrei:

Code:
tr.normal {
background: #efefef;
}

tr.hover {
background: #afafaf;
}
HTML:
<tr class="normal" onmouseover="this.className='hover'" onmouseout="this.className='normal'"> ... </tr>
 
Status
Nicht offen für weitere Antworten.
Zurück