Code:
for (i = 0; i < li.length; i++) {
a = li[i].getElementsByTagName("a")[0];
if (a.innerHTML.toUpperCase().indexOf(filter) > -1) {
li[i].style.display = "";
} else {
li[i].style.display = "none";
}
}
Ich habe deinen Code jetzt nicht überprüft, gehe mal davon aus, dass er soweit mal funktioniert. Das hier ist die Stelle, wo du durch ALLE Elemente durchzählst, möchtest du nur 5 haben, dann könntest du diese ungefähr so erweitern. Auch hier der Hinweis, nicht getestet, etwaige Fehler können mittels Fehlerkonsole korrigiert werden.
Code:
var j = 0;
for (i = 0; i < li.length; i++) {
a = li[i].getElementsByTagName("a")[0];
if (a.innerHTML.toUpperCase().indexOf(filter) > -1 && j != 5) {
li[i].style.display = "";
j++;
} else {
li[i].style.display = "none";
}
}