Kukni si tú prílohu prosím. Máš pravdu, asi to robí to isté. Skús dať vyhľadať že vlakovka. Slovo vlak sa tam nachádza pred slovom vlakovka, preto keď začnem písať V..L..A..K (vlak vysvieti) ..O a už to nevyhľadá nič.
// Asi nie je dobrý nápad tam dávať onkeyup, lebo to cez BUTTON pracuje správne, keď sa nevyhľadáva furt písmenko za písmenkom.
JavaScript - vyhľadávanie v stránke
- Prílohy
-
- search.zip
- (2.55 KiB) 156 stiahnutí
V súbore search2.js pridaj do funkcie simpleSearchHighlight (na začiatok)A vo funkcii cleanWord oprav riadok (má tym byť <= a nie iba <)
PS: Na postupné hľadanie by bolo efektívnejšie upraviť celý skript (nie je treba všetko vždy vymazať a nájsť znova)
Kód: Vybrať všetko
first = true;Kód: Vybrať všetko
an = (i <= node.childNodes.length - 2) ? node.childNodes[i+1] : null;PS: Na postupné hľadanie by bolo efektívnejšie upraviť celý skript (nie je treba všetko vždy vymazať a nájsť znova)
Hej, teraz to pracuje úplne super.
A chcem sa len opýtať, na začiatku JavaScriptu má byť to var first = true?
A chcem sa len opýtať, na začiatku JavaScriptu má byť to var first = true?
Kód: Vybrať všetko
var first = true;
function highlightWord(node,word)
Má to tam byť (aj keď stačilo by aj "var first;"). To nadefinuje globálnu premennú first (vo funkcii simpleSearchHighlight sa nastaví true, a neskôr, keď sa nájde nejaký vyhovujúci text, tak sa to nastaví, vo funkcii highlightWord na false).DomCZo napísal:Hej, teraz to pracuje úplne super.
A chcem sa len opýtať, na začiatku JavaScriptu má byť to var first = true?Kód: Vybrať všetko
var first = true; function highlightWord(node,word)
PS: Lepšie by bolo, keby si dal ten editbox a tlačítko do divu, s absolútnou polohou 0,0 (tak by pri tom ako sa stránka odskroluje, ostal ten edit hore [a posunul by sa iba zvyšok stránky])
Áno, aby stránka neskákala hore, dole, hore, dole...
Onkeyup som dal aj tak preč, lebo pri väčšej stránke to dlho vyhľadáva, aspoň na mojom pomalom kompe.Tak díki za pomoc.
Onkeyup som dal aj tak preč, lebo pri väčšej stránke to dlho vyhľadáva, aspoň na mojom pomalom kompe.
Kód: Vybrať všetko
<form onsubmit="cleanHighlight(); simpleSearchHighlight(); return false;">
<input type="text" id="nick">
<input type="submit" value="Označiť">
</form>