Hallo,
Mein Web besteht aus zwei Frames, einmal den Navigations-Frame und dem Hauptframe. Ich würde gerne im Hauptframe nach Wörtern suchen. Im Navi-Frame soll aber das Suchformular stehen und im Hauptframe soll das gefundene Wort blau markiert werden und auf das Wort springen. Ich habe schon was ausprobiert aber das nur im IE im Firefox tut sich da nix :-(
Mein Web besteht aus zwei Frames, einmal den Navigations-Frame und dem Hauptframe. Ich würde gerne im Hauptframe nach Wörtern suchen. Im Navi-Frame soll aber das Suchformular stehen und im Hauptframe soll das gefundene Wort blau markiert werden und auf das Wort springen. Ich habe schon was ausprobiert aber das nur im IE im Firefox tut sich da nix :-(
HTML:
<body>
<div style="position:absolute; top:124px; left:660px;z-index:101">
<form name="search" onSubmit="return findInPage(this.string.value);">
<h2>Suchbegriff eingeben:
<input name="string" type="text" size=15 onChange="n = 0;">
<input type="submit" value="Suchen"><br>
</h2>
</form>
</div>
Code:
//----------JavaScript Suchfunktion------------------------------------------->
var NS4 = (document.layers);
var IE4 = (document.all);
var win = parent.frames["Hauptframe"];
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("Der Begriff" +str + "wurde auf diese Seite nicht 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("Der Begriff "+str + " wurde auf dieser Seite nicht gefunden.");
}
}
return false;
}
//--------------------------Ende Suchfunktion--------------------------->