js: Easy to use search within page script

Forum for anything hard- or software related.

Moderator: Moderators

Post Reply
Deimos

js: Easy to use search within page script

Post by Deimos »

Place the following code somewhere between <head> and </head>.




Code: Select all

<script language="JavaScript">



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("Nothing found.");

  }



  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("Nothing found.");

    }

  }



  return false;

}



</script>




Place the following code where the searchform should be viewable :) somewhere between <body> and </body>


Code: Select all

<form name="search" onSubmit="return findInPage(this.string.value);">

<font size=3><input name="string" type="text" size=15 onChange="n = 0;"></font>

<input type="submit" value="Search">

</form>
Last edited by Deimos on Thu Oct 16, 2003 12:00 pm, edited 1 time in total.
Clown
unpossible??!?!!
Posts: 1750
Joined: Sun Jul 27, 2003 7:38 am
Location: en

Post by Clown »

Ctrl + F works for me :D
I don't give a shit.
Den
something dur dur
Posts: 2616
Joined: Fri Jul 25, 2003 8:56 am
Location: nl
Contact:

Post by Den »

why use english vars in ur code, and and txt in dutch? ;)
There's a chopper coming in 3 days and there's a katana on top of the cafe and that's all you need to know
Image
Deimos

Post by Deimos »

Just a bad habbit i guess
Jazzie
is now shorter
Posts: 923
Joined: Tue Jul 29, 2003 5:49 am
Location: se
Contact:

Post by Jazzie »

I agree with clown :o
fell in love with the game
Post Reply