wie kann ich in einer Tabelle einzelne Zellen bei gedrückter Maustaste markieren ?
Es soll sich nur Border-Color nicht der Hintergrund ändern
Das Ereignis heißt demnach onmousedown
Wie macht man es ,damit man das nicht in jede Zelle einzeln schreiben muß
Ich mach die Tabelle und die einzelnen Zellen mit nem Array,
dann kann ich jeder Zelle ne eigene ID geben und brauch nicht jedesmal das onmousedown reinschreiben
Das ist doch Unsinn, du kannst wie crash schon schrieb, einen globalen Event benutzen, für die ganze Tabelle und im Eventobjekt auf die Zelle zugreifen.
var tab = document.getElementsByTagName('table')[0];
tab.onmousedown = function (e) {
if(!e) e = window.event;
var obj = e.target || e.srcElement;
obj.style.backgroundColor = 'red';
}
Selbst dann ist gibt es Möglichkeiten ohne jeder Zelle einen Extra Event anzupappen. Aber wenn du unbedingt deinen Quellcode aufblähen willst, kann man halt nicht helfen.
Schönes Breispiel wie man völlig ohne Not seinen Code um das mindestens dreifache aufbläht. Dadurch wird er nicht nur viel langsamer geladen sondern auch Suchmaschinen bewerten ihn schlechter.
Insofern hast du recht, es funktioniert das du den Code massiv zu deinen ungunsten verschlechtert hast, obwohl ich dir eine einfache Lösung gezeigt habe.
EDIT: Wobei ich grad sehe, die Seite hat nichts mit der hier gestellten Frage zu tun. Es ist wohl einfach nur Werbung. Ich mach den Link mal weg.
Ich hab es eben leicht verändert
Nicht bei gedrückter Maustaste, sondern nur wenn man mit der Maus drüber fährt verändert sich die Hintergrundfarbe der Tabellenzelle