JavaScript ?!?

Post Reply
User avatar
gLaVoReZa
Много Редовен
Много Редовен
Posts: 1704
Joined: Wed May 10, 2006 3:37 pm
Answers: 72
Location: гр. София

JavaScript ?!?

Post by gLaVoReZa » Wed May 10, 2006 3:50 pm

Искам да попитам, ако някой знае - как може с JavaScript да се намери даден 'string' в някакъв масив от самия source-код?...
Знам, че може да звучи малко объркано, но няма как да се обясни по друг начин :roll:
Моля помагайте, защото съм се нагърбил с тежката задача - да направя
почти-JavaScript - търсачка... 8) Ще съм ви безкрайно признателен. :)

Admin
Site Admin
Site Admin
Posts: 4
Joined: Thu Jan 01, 1970 12:00 am
Answers: 224

Post by Admin » Wed May 10, 2006 4:22 pm

Code: Select all

<html> 
<body> 
<script language="JavaScript"> 

/* 
 aacieaoie Java script eiaiaa io http&#58;//hitscripts.hit.bg 
*/ 

var NS4 = &#40;document.layers&#41;;    // Which browser? 
var IE4 = &#40;document.all&#41;; 

var win = window;    // window to search. 
var n   = 0; 

function findInPage&#40;str&#41; &#123; 

  var txt, i, found; 

  if &#40;str == ""&#41; 
    return false; 

  // Find next occurance of the given string on the page, wrap around to the 
  // start of the page if necessary. 

  if &#40;NS4&#41; &#123; 

    // Look for match starting at the current point. If not found, rewind 
    // back to the first match. 

    if &#40;!win.find&#40;str&#41;&#41; 
      while&#40;win.find&#40;str, false, true&#41;&#41; 
        n++; 
    else 
      n++; 

    // If not found in either direction, give message. 

    if &#40;n == 0&#41; 
      alert&#40;"Greshka2!"&#41;; 
  &#125; 

  if &#40;IE4&#41; &#123; 
    txt = win.document.body.createTextRange&#40;&#41;; 

    // Find the nth match from the top of the page. 

    for &#40;i = 0; i <= n && &#40;found = txt.findText&#40;str&#41;&#41; != false; i++&#41; &#123; 
      txt.moveStart&#40;"character", 1&#41;; 
      txt.moveEnd&#40;"textedit"&#41;; 
    &#125; 

    // If found, mark it and scroll it into view. 

    if &#40;found&#41; &#123; 
      txt.moveStart&#40;"character", -1&#41;; 
      txt.findText&#40;str&#41;; 
      txt.select&#40;&#41;; 
      txt.scrollIntoView&#40;&#41;; 
      n++; 
    &#125; 

    // Otherwise, start over at the top of the page and find first match. 

    else &#123; 
      if &#40;n > 0&#41; &#123; 
        n = 0; 
        findInPage&#40;str&#41;; 
      &#125; 

      // Not found anywhere, give message. 

      else 
        alert&#40;"Нищо не открих!"&#41;; 
    &#125; 
  &#125; 

  return false; 
&#125; 

</script> 

<form name="search" onSubmit="return findInPage&#40;this.string.value&#41;;"> 
<font size=3><input name="string" type="text" size=15 onChange="n = 0;"></font> 
<input type="submit" value="Search"> 
</form> 
Искам да попитам, ако някой знае - как може с JavaScript да се намери даден 'string' в някакъв масив от самия source-код?... 
Знам, че може да звучи малко объркано, но няма как да се обясни по друг начин  
Моля помагайте, защото съм се нагърбил с тежката задача - да направя 
почти-JavaScript - търсачка...  Ще съм ви безкрайно признателен. 
</body> 
</html> 

Текста е само примерен за да видиш как търси.
Търси в съдържанието на страницата.

Ето ти ДЕМО:
http://admin.web-tourist.net/javascriptsearch.html

User avatar
gLaVoReZa
Много Редовен
Много Редовен
Posts: 1704
Joined: Wed May 10, 2006 3:37 pm
Answers: 72
Location: гр. София

Post by gLaVoReZa » Wed May 10, 2006 5:06 pm

Внимателно ще разгледам този код, и ще видя дали ще ми помогне, благодаря за помощта!

Post Reply