Hallo,
Habe eine kleine Suchfunktion erstellt, die ich auf meiner Homepage schon länger im Einsatz habe. Leider geht diese NUR mit MS IE, aber nicht mit Firefox. Bei Firefox werden keine Einträge gefunden (also Treffer immer 0).
Wahrscheinlich habe ich Fehler bei RegExp.
Hier der Auszug der Funktion:
for (i = 0; i <= anzp; i++) { //jeden Block bzw Array durchsuchen
ergzw=0; //zurücksetzen für jeden Block
for (var j = 0; j < suchwortanz; j++) { //für jedes Wort suchen
suche = new RegExp (suchwort[j],"gi");
var ergebnis = suche.exec(inhalttxt[i]);
if(ergebnis != null)
ergzw++;
}
if(ergzw == suchwortanz) { //wenn ergzw = anzahl der Suchwoerter (bei UND) ... alle wörter gefunden
document.writeln(inhalthtml[i]);
treffer++;
} else {
document.write(".");
}
}
Erläuterung Variablen:
- Anzp ist die Anzahl der Blöcke zwischen <P></P> die durchsucht werden
- inhalttxt wird weiter oben mit document.getElementsByTagName("p")[k].innerText; ermittelt
- inhalthtml wird mit OuterHtml gefüllt.
- suchwortanz = Anzahl der Suchwörter, die weiter oben mit Split separiert wurden
- suchwort(j) enthält das Suchwort (String)
Da ich weiss, dass Firefox das InnerText nicht unterstützt, habe ich das gleiche mit
var ergebnis = suche.exec(inhalthtml[i]);
(also OuterHtml) versucht. Geht aber auch nicht.
Sieht irgendjemand etwas, dass mit Firefox Probleme macht? ... bin noch Anfänger. Auch der Aufbau der Schleife ist vielleicht für die Profis unter euch etwas laienhaft .... wie gesagt, bin noch Anfänger, und programmiere sonst mit VBA.
Vielen Dank an euch.
Gruss
Claude