2.1k Aufrufe
in Skripte(PHP,ASP,Perl...) von
hallo.
folgendes klappt nicht:

<a onMouseOver="this.style.color='#f00';setTimeout('this.style.color="#000";',1000);" href="">Link</a>

an der stelle hinter setTimeout( bekomm ich die fehlermeldung "unterminated string literal". ich bin in sachen javascript nicht so die leuchte. was ist da falsch?

3 Antworten

0 Punkte
von supermax Experte (4.8k Punkte)
Du mußt die doppelten Anführungszeichen im setTimeout()-Aufruf durch ein vorangestelltes \ "escapen", also

<a onMouseOver="this.style.color='#f00';setTimeout('this.style.color=\"#000\";',1000);" href="">Link</a>


Noch besser wäre es in dem Fall allerdings, eine kleine Funktion zu schreiben und in onmouseover diese Funktion aufzurufen.
0 Punkte
von
das ändert aber nichts an der fehlermeldung
0 Punkte
von supermax Experte (4.8k Punkte)
Sorry mein Fehler, korrekt müßte es heißen
<a onMouseOver="this.style.color='#f00';setTimeout('this.style.color=\'#000\';',1000);" href="">Link</a>

Deine Antwort

Dein angezeigter Name (optional):
Datenschutz: Deine Email-Adresse benutzen wir ausschließlich, um dir Benachrichtigungen zu schicken. Es gilt unsere Datenschutzerklärung.
Anti-Spam-Captcha:
Bitte logge dich ein oder melde dich neu an, um das Anti-Spam-Captcha zu vermeiden.
...