Javascript und Sonderzeichen im title Attribut
Marco
- javascript
Hallo zusammen
Ich setze das title-Attribut eines Elements im Internet-Explorer folgendermassen:
document.getElementById('elementId').setAttribute('title', "Und?
Wie siehts in Ihrem Browser aus?");
oder
document.getElementById('elementId').title = 'Und?
Wie siehts in Ihrem Browser aus?';
Leider wird der Zeilenumbruch im title-Attribut nicht interpretiert, d.h. die Zeichen werden eins zu eins ausgegeben. Setze ich aber den Text von Anfang an direkt in den HTML-Quelltext, dann klappts:
<div id="elementId" title="Und?
Wie siehts in Ihrem Browser aus?">
Wie kann ich per Javascript das Title-Attribut setzen, sodass auch Zeilenumbrüche angezeigt werden?
Viele Grüsse
Marco
Hello out there!
Ich setze das title-Attribut eines Elements im Internet-Explorer folgendermassen:
Im IE?? Ich dachte, du würdest das 'title'-Attribut in einem Script setzen.
Willst du damit andeuten, das Ganze müsste nur im IE funktionieren?
Dann solltest du von
document.getElementById('elementId').setAttribute('title', "Und?
Wie siehts in Ihrem Browser aus?");
Abstand halten; IIRC hat der IE Probleme mit 'setAttribute'.
Leider wird der Zeilenumbruch im title-Attribut nicht interpretiert, d.h. die Zeichen werden eins zu eins ausgegeben.
Na sicher doch. Script-Bereiche sind in HTML (also auch für einen Tag-Soup-Parser bei XHTML) CDATA; nicht PCDATA.
Wie kann ich per Javascript das Title-Attribut setzen, sodass auch Zeilenumbrüche angezeigt werden?
Indem du das Zeichen dem Kontext entsprechend angibst: dieser ist nicht HTML, sondern JavaScript:
document.getElementById('elementId').title = 'Und?\u000D;Wie siehts in Ihrem Browser aus?';
Firefox zeigt statt Zeilenumbruchs ein Leerzeichen.
See ya up the road,
Gunnar
Hallo,
Danke! Mit \n klappts ebenfalls.
Viele Grüsse
Marco