Recherche d'un mot dans une page

Contenu du snippet

Voici un petit javascript qui vous permet de rechercher un mot dans une page, en le surlignant (un mot à la fois, recliquer sur le bouton rechercher pour surligner l'instance suivante)
Comme vous le voyez, c'est un script qui n'est pas de moi, mais j'ai cependant trouvé utile de le déposer sur ce site.

Source / Exemple :


<SCRIPT language=JavaScript>
/* Find In Page Script- By Mike Hall (MHall75819@aol.com) */
/* Recherche de mot */
var NS4 = (document.layers);    // Which browser?
var IE4 = (document.all);
var win = window;    // window to search.
var n   = 0;
function findInPage(str) {
var txt, i, found;
if (str == "")
return false;
// Find next occurance of the given string on the page, wrap around to the
// start of the page if necessary.
if (NS4) {
// Look for match starting at the current point. If not found, rewind
// back to the first match.
if (!win.find(str))
while(win.find(str, false, true))
n++;
else
n++;
// If not found in either direction, give message.
if (n == 0)
alert("Je suis navré, je n'ai rien trouvé. Vérifiez l'orthographe.");
}
if (IE4) {
txt = win.document.body.createTextRange();
// Find the nth match from the top of the page.
for (i = 0; i <= n && (found = txt.findText(str)) != false; i++) {
txt.moveStart("character", 1);
txt.moveEnd("textedit");
}
// If found, mark it and scroll it into view.
if (found) {
txt.moveStart("character", -1);
txt.findText(str);
txt.select();
txt.scrollIntoView();
  n++;
  }
// Otherwise, start over at the top of the page and find first match.

else {
if (n > 0) {
n = 0;
findInPage(str);
}
// Not found anywhere, give message.
else
alert("Je suis navré, je n'ai rien trouvé. Vérifiez l'orthographe.");
}
}
return false;
}
</SCRIPT>

<FORM name=search onsubmit="return findInPage(this.string.value);"><INPUT 
name=string onchange="n = 0;"> 
<INPUT type=submit value=Rechercher></FORM>

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.