Nach mehreren Stunden Arbeit ist es mir heute gelungen eine neue, stabilere Version der “Live”-Suche auf motorradkiosk.de zu implementieren. Neben weiteren Suchkriterien, die hinzugefügt werden sollten, galt es vor allem mehr Performance und weniger Fehler mit dem Ajax httpRequest zu erzeugen.
Die Suche funktioniert über in Javascript abgefangene Änderungen der Formulardaten. Koppelt man diese jedoch direkt an den http - Request, hat man das Problem, dass bei jeder Buchstabenänderung - d.h. bei schneller Eingabe von Suchworten - mehrere Anfragen per Request getätigt werden.
Da bei jeder Abfrage ein bestimmtes <div> Element aus dem DOM ersetzt wird, kann es schnell zu Problemen kommen - vor allem Grafikfehler oder abgebrochene http - Requests häufen sich.
Um diesen Fehler zu umgehen kann man den Request einfach um ein paar Sekunden verzögern mit einem Timeout. Diesen lässt man bei jedem Aufruf neustarten und erst wenn die Zeit ohne weitere Veränderung verstrichen ist einen Request über Ajax starten.
Durch eine “Live”-Suche kann der Nutzer seine Auswahl ohne Verzögerung weiter einschränken oder erweitern und bekommt bessere Ergebnisse sofort angezeigt.




0 Kommentare zu “Neue Suchabfrage bei www.motorradkiosk.de”