So verwenden Sie mehrere JQuery-UI-Slider als Filter
-
12-12-2019 - |
Frage
Ich habe diese jsfiddle http://jsfiddle.net/danielulp/gz5gn/ .
Was ich tun möchte, ist Figurer eine ungeordnete Liste auf Datenimmobilien mit etwa 6 Schiebereglern.Aber für meine Entwicklung benutze ich nur zwei
Erste Frage: Der Qualitätsschieberer funktioniert einfach gut, aber wenn ich den Preisschieber gleiten, sieht es die MinP- und MaxP-Variablen als Objekte, warum?Wie kann ich das beheben?
Zweite Frage: Mein Code ist jetzt prezig unordentlich, ich muss Code, der für jeden Filter spezifisch ist (z. B. Preis, Qualität usw.), wie kann ich meinen Code vereinfachen / verkürzen?
Code von Geige:
html generasacodicetagpre.
Javascript generasacodicetagpre.
edit: Das erste Problem mit den minimalen MIN-MAX-Variablen, die Objekte sind, passiert auch dem Qualitätsschieberegler, wenn ich die IF-Qualitätsanweisung über dem Preis bewege.Preiswerte sind dann korrekt.Es scheint also ein Problem mit den IF-Anweisungen in der Dias-Funktion zu sein.
Lösung
Es scheint, dass es ein sehr praktisches JQuery-Plugin namens filter.js gibt.
Demo: http://jiren.github.com/filter.js/filterjs.HTML
github: https://github.com/jiren/filter.js .
Andere Tipps
Es scheint, dass das Ändern des Rutsch-Ereignisses zum Ändern, um zu ändern, dass ich verwenden kann generasacodicetagpre.
Dies war mit dem Folienereignis nicht möglich, da diese Anweisungen dann die alten Werte als das Folienereignis aufgenommen haben, während das Folie während des Gleitens ausgelöst wird (auf dem iPad getestet, bin nicht sicher, wie dies mit der tatsächlichen Maus funktioniert) siehe http://jqueryui.com/demos/slider/#event-slide für Mehr Infos
arbeitet jsfiddle http://jsfiddle.net/danielulp/gz5gn/42/
Jetzt muss ich meinen Code noch vereinfachen / verkürzen
Ich habe eine Idee, zumindest klarer Code zu erstellen
Zunächst muss ich feststellen, ob das SliderValue erhöht oder verringert wurde, dann kann ich nur für gezeigte oder versteckte Listenelemente filtern, um entweder zu verstecken oder zu zeigen
Hiermit können nur bereits gefilterte Listenelemente ausgeführt, sodass ich sie nicht erneut verbergen muss, da ich in meinem vorherigen Code getan habe
Aber meine jsfiddle bricht auf etwas in meinem Code, aber ich kann es nicht niederlassen, irgendwelche Ideen? http://jsfiddle.net/danielulp/4uf3e/4/