[GastForen Programmierung/Entwicklung JavaScript Einzelne Zeichen Farbe zuweisen in HTML-Dokument

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Einzelne Zeichen Farbe zuweisen in HTML-Dokument

uswd
Beiträge gesamt: 315

19. Dez 2018, 17:26
Beitrag # 1 von 3
Bewertung:
(3416 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

ich habe ein HTML-Dokument, welches mehrere Absätze enthält, in denen bestimmte Zeichen eine andere Farbe zugewiesen werden sollen. Da dies relativ viele sind, würde ich gern vermeiden, diese von Hand in ein
Code
<span class="gf"></span> 

Paar zu packen. CSS ist passend definiert.

Ich habe es im Head damit versucht:
Code
window.onload = function() { 
obj = document.getElementsById('dia').getElementsByTagName('p');
obj.innerHTML = obj.innerHTML.replace(/[\+ztsvwm]/g,'<span
class="gf">$1</span>');
}

HTML könnte z. B. so aussehen:
Code
<body> 
<div>
<p id="dia"> XIIIIIIIIY<br>
9rsnlwq-trk+0<br>
9zpp+-zppvlp0<br>
9-+-zp-snp+0<br>
9+-zp-+-+-0<br>
9-+PzPP+-+0<br>
9+-sN-vLP+-0<br>
9PzP-+-+PzP0<br>
9tR-+QmKLsNR0<br>
xiiiiiiiiy </p>
</div>
</body>


Alle Zeichen der Menge [\+ztsvwm] sollen eingefärbt werden. Das klappt aber mit meinem Anfänger-Code leider nicht.

Kann mir jemand auf die Sprünge helfen?

Danke im Voraus.

Ulrich
X

Einzelne Zeichen Farbe zuweisen in HTML-Dokument

olaflist
Beiträge gesamt: 1400

19. Dez 2018, 21:30
Beitrag # 2 von 3
Beitrag ID: #568132
Bewertung:
(3402 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
getElementsByTagName gibt Dir ein array zurück, oder? Ein array hat aber kein innerHTML. Mit

Code
obj = document.getElementsById('dia').getElementsByTagName('p')[0]; 


müsstest Du weiter kommen... (in der Annahme, es ist immer das erste und einzige <p>).

Olaf


als Antwort auf: [#568128]

Einzelne Zeichen Farbe zuweisen in HTML-Dokument

uswd
Beiträge gesamt: 315

20. Dez 2018, 08:35
Beitrag # 3 von 3
Beitrag ID: #568136
Bewertung:
(3384 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hab ich probiert, zeigt aber keine "Wirkung". Und es sollte alle Absätze des HTML-Dokuments erfassen, die die "id='dia'" besitzen.
Na ja, wenn ich's nicht hinbekomme, muss ich halt die "häßliche" Lösung mittels Suchen-und-Ersetzen nehmen. Die macht dann das HTML sehr unleserlich mit den vielen <span></span>-Konstrukten.
Danke jedenfalls für die Hilfe.

Ulrich


als Antwort auf: [#568132]