replace: function(begriff, quelle ,color)
{
var replacementRegEx=new RegExp('('+begriff+')','gi');for(var i = 0; i < quelle.childNodes.length; i+=1)
{
switch(quelle.childNodes.item(i).nodeType)
{
case 1:
this.replace(begriff, quelle.childNodes.item(i), color);
break;case 3:
quelle.childNodes.item(i).data = quelle.childNodes.item(i).data.replace(replacementRegEx,'<span style="background-color:#'+color+';">$1</span>');
}
}
}.data ist ein Textknoten, d.h. dort wird kein HTML interpretiert. Du hast nur zwei Möglichkeiten, entweder du musst die entsprechenden Elemente erzeugen mit createElement oder du benutzt innerHTML.
Struppi.
Hallo,
Danke für die fixe Antwort, doch leider habe ich auch das bereits versucht, doch immer ich data mit einem "innerHTML" ersetze bekomme ich folgende Fehlermeldung:
Error: quelle.childNodes.item(i).innerHTML has no properties
Line: 88
Auch die zweite Möglichkeit ist mir bekannt, doch muss ich gestehen, ich hatte eine Lösung in der Richtung bereits angedacht, dass mir diese Methode nicht so sehr geläufig ist, dass ich in der Lage wäre damit das Problem zu lösen, wo sie mir aber doch eigentlich die liebste wäre. Könnt ihr helfen?
Nochmal Dank und Gruß, qwert2000