Hallo Community,
habe wieder eine kleine Frage. Dies mal zu einem Fallbeispiel, dass Euch sicher zum Hals raushängt: markieren einer aktiven Tabellenzeile beim 'onmouseover'-Event. Zudem soll dabei ein Image sichtbar gemacht werden, das einen Link zur Bearbeitung beinhalten soll.
Funktioniert auch jetzt erst mal, sowohl das Einfärben, als auch die Anzeige des 'Buttons'.
Problem hierbei jetzt nur:
Das 'onmouseleave'-Event setzt bereits ein wenn der Zeiger sich auf dem Tabellenrahmen befindet, also sobald er aus dem Range eines <td>-Elements bewegt wird. Sobald also der Mauszeiger (zu schnell) über eine Zelle hinweg zur nächsten gleitet verliert die Zeile die Markierung und der 'Button' ist weg.
Wie würdet Ihr mir raten das zu lösen? Position des Mauszeigers erfragen und prüfen, ob dieser sich im Range des <tr>-Elements befindet oder gleich andere Ereignisse, als 'onmouseleave' wählen?
Coding folgt. Die Tabelle wird später per php-Schleife gefüllt, hier nur ein Beispielsatz:
Danke und beste Grüße,
Gokar
habe wieder eine kleine Frage. Dies mal zu einem Fallbeispiel, dass Euch sicher zum Hals raushängt: markieren einer aktiven Tabellenzeile beim 'onmouseover'-Event. Zudem soll dabei ein Image sichtbar gemacht werden, das einen Link zur Bearbeitung beinhalten soll.
Funktioniert auch jetzt erst mal, sowohl das Einfärben, als auch die Anzeige des 'Buttons'.
Problem hierbei jetzt nur:
Das 'onmouseleave'-Event setzt bereits ein wenn der Zeiger sich auf dem Tabellenrahmen befindet, also sobald er aus dem Range eines <td>-Elements bewegt wird. Sobald also der Mauszeiger (zu schnell) über eine Zelle hinweg zur nächsten gleitet verliert die Zeile die Markierung und der 'Button' ist weg.
Wie würdet Ihr mir raten das zu lösen? Position des Mauszeigers erfragen und prüfen, ob dieser sich im Range des <tr>-Elements befindet oder gleich andere Ereignisse, als 'onmouseleave' wählen?
Coding folgt. Die Tabelle wird später per php-Schleife gefüllt, hier nur ein Beispielsatz:
Code:
<script type="text/javascript">
function highlight_cell(cell)
{
cell.cells.item(0).bgColor = "darkorange";
cell.cells.item(cell.cells.length - 1).style.visibility = "visible";
}
function reset_cell(cell)
{
cell.cells.item(0).bgColor = "darkgrey";
cell.cells.item(cell.cells.length - 1).style.visibility = "collapse";
}
</script>
HTML:
<table border="1" class="search_result">
<tr>
<th bgcolor="white" height="30px">Spalte 1</th>
<th bgcolor="white">Spalte 2</th>
<th bgcolor="white">Spalte 3</th>
<th bgcolor="white">Spalte 4</th>
</tr>
<tr onmouseover="highlight_cell(this)" onmouseleave="reset_cell(this)">
<td bgcolor="darkgrey">Zelle A 1</td>
<td bgcolor="darkgrey">Zelle B 1</td>
<td bgcolor="darkgrey">Zelle C 1</td>
<td width="5px" style="visibility:collapse"><a href="#"><img src="edit.png" alt="Bearbeiten"></a></td>
</tr>
</table>
Danke und beste Grüße,
Gokar