Suchfunktion (JS) in Framefenstern !?

FRitter

Erfahrenes Mitglied
Hallo Leute,

wer kann folgendes JavaScript so abwandeln, dass die Suchfunktion des Scripts auch mit Frames funktioniert (etwa in Richtung "parent.frames..."?) - innerhalb der gleichen Site funktionniert das Script einwandfrei und ist für diesen Einsatz nur zu empfehlen.

PS: Auf der Seite "http://www.GartenBahnAnlage.de" unter dem Menüpunkt "Links" sollte die Suchfunktion dadurch auch nach Frame-Nutzung wieder funktionieren - vielleicht wird mein Anliegen deutlicher, wenn man die Seite mit Suchfunktion vor Augen hat (z.B. Sucheingabe des Wortes "das" zeigt ein deutliches Ergebnis...)

Schonmal danke für die Mühe!


Code:
<script language="JavaScript">
var NS4 = (document.layers);
var IE4 = (document.all);
var win = window;
var n   = 0;
function findInPage(str) {
  var txt, i, found;
  if (str == "")
    return false;
  if (NS4) {
    if (!win.find(str))
      while(win.find(str, false, true))
        n++;
    else
      n++;
    if (n == 0)
      alert("Nichts gefunden.");
  }
  if (IE4) {
    txt = win.document.body.createTextRange();
    for (i = 0; i <= n && (found = txt.findText(str)) != false; i++) {
      txt.moveStart("character", 1);
      txt.moveEnd("textedit");
    }
    if (found) {
      txt.moveStart("character", -1);
      txt.findText(str);
      txt.select();
      txt.scrollIntoView();
      n++;
    }
    else {
      if (n > 0) {
        n = 0;
        findInPage(str);
      }
      else
        alert("           Es wurden keine Einträge gefunden.            ");
    }
  }
  return false;
}
</script>


<form name="search" onsubmit="return findInPage(this.string.value);">
<input name="string" type="text" size="30" onchange="n = 0;">
<input type="submit" value=" suchen ">
</form>

(Ende)
 
Hallo und zugleich danke für die Antworten! :)

Die Lösung mit "var win = parent.framename;" funktioniert - ich hatte immer im Kopf es müsste lauten: "parent.frames.framename".

Dass die Seite mittlerweise etwas JS-überlaufen ist, gebe ich zu und zudem ist sie nur IE-kompatibel. Aber da Sie nur noch seltener aktualisiert wird und ich andere Projekte betreue lohnt sich ein "Umbau" nicht. Bisher hatten aber auch weniger User Probleme mit JavaScript...
 
Zurück