In diesem Artikel wird hauptsächlich beschrieben, wie ein Anzeigefeld im Schiebereglerstil basierend auf vorhandenen Komponenten (z. B. dem Swiper des WeChat-Applets und swiper.js, das wir normalerweise in h5 verwenden) implementiert wird. Die Demo basiert auf einem Miniprogramm, die Logik ist jedoch universell. HintergrundIch arbeite gerade an einem neuen Miniprogramm. Auf der Homepage gibt es ein Swiper-Modul. Dank der hervorragenden Arbeit meiner Design-Klassenkameraden 😭 habe ich etwas Freude an der langweiligen Entwicklung gefunden. Sie haben die Punkte im Anzeigefeld des Wischers in einen Schieberegler geändert. Mal ehrlich, wäre es nicht schön, sie einfach in eine Reihe zu setzen und anzuklicken? Hahahaha. Aber ich liebe ihn~ ZieleffektInsgesamt ist es einfach. Vor allem der Schieberegler unten muss noch etwas überarbeitet werden. Nach dem Sortieren der Anforderungen müssen folgende Funktionspunkte implementiert werden:
IdeenNach der Sortierung sieht der Umsetzungsplan wie folgt aus:
erreichenswiper hört auf ÄnderungenZuerst müssen wir das Änderungsereignis des Swipers verwenden. Der Code lautet wie folgt: <Swiper Klasse = "Hot-Content-Swiper" Indikatorpunkte = "{{Indikatorpunkte}}" vertikal="{{vertikal}}" bindchange="sliderHandler"> <block wx:für="{{popular_zone_list}}" wx:key="*dies"> <Swiper-Element> <Klasse anzeigen="Hotlist"> Das ist Swiper{{index}} </Ansicht> </swiper-item> </block> </swiper> Benutzerdefiniertes PunktmodulZweitens müssen wir den DOM von dot anpassen, also unseren Slider-Bereich. Der Code lautet wie folgt: <Ansichtsklasse="Punkt"> <view class="dot-bar" style="width: {{dotBarWidth}}rpx"></view> </Ansicht> Dazu muss unserem Schieberegler eine Anfangsgröße zugewiesen werden, da es sonst nach dem Verschieben zu einem Zittern bei der Breitenänderung kommt, nämlich der dotBarWidth. Die Größe des Sliders berechnet sich aus der Länge des Slides und der Anzahl der Swiper-Items. Nachdem wir die Breite auf diese Weise ermittelt haben, müssen wir sie nur noch um ein Vielfaches der Schiebereglerbreite versetzen. sei Punktbreite = 100; let dotBarWidth = Math.round(dotWidth/popular_zone_list.length); Logik im ÄnderungsereignisDie Vorlage wurde geschrieben, also beginnen wir mit dem Schreiben des Änderungsereignisses. Der Code lautet wie folgt: SchiebereglerHandler({detail}) { sei curPage = detail.current; lass self = dies; dies.animieren('.dot-bar', [ { translateX: self.prePage * 100 + '%', transformOrigin: "Mitte", }, { translateX: aktuelleSeite*100 + '%', transformOrigin: "Mitte", }, ], 100, Funktion () { // Rückruf animieren self.prePage = curPage; selbst.clearAnimation('.container', { übersetzenX: wahr, transformOrigin: wahr }); }); }, // Wenn es kein Miniprogramm ist, kann this.animate durch einen dynamisch gebundenen Stil oder andere DOM-Operationen ersetzt werden. Finden Sie nicht, dass diese Funktion, nachdem sie implementiert wurde, sehr einfach und ziemlich gut ist? 😒 Abschließende GedankenEhrlich gesagt habe ich während des Implementierungsprozesses einige dumme Dinge getan, die möglicherweise mit meinem damaligen Zustand zusammenhingen. Ich war zu sehr darauf konzentriert, zu beurteilen, ob der Schieberegler nach links oder rechts geschoben wurde, was zu einem Umweg führte. Basierend auf den Ergebnissen stellten wir jedoch fest, dass wir nur die Start- und Endpositionen berechnen müssen und die Startposition des Wischs nach links größer als die Endposition sein muss. Ich hoffe, das obige Schema kann Ihnen als Referenz dienen~🎉 Dies ist das Ende dieses Artikels zum Ändern des Punkts im WeChat-Miniprogramm „Swiper-dot“ in einen Schieberegler. Weitere relevante Inhalte zum Ändern des Punkts im WeChat-Miniprogramm „Swiper-dot“ in einen Schieberegler finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder durchsuchen Sie die verwandten Artikel weiter unten. Ich hoffe, Sie werden 123WORDPRESS.COM in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Docker-Datenverwaltung und Netzwerkkommunikationsnutzung
>>: Zusammenfassung der Methoden zum Suchen und Löschen doppelter Daten in MySQL-Tabellen
Inhaltsverzeichnis 1. Einleitung 2. auswählen 2.1...
Originallink: https://vien.tech/article/138 Vorwo...
Vom Einsteiger bis zum Neueinsteiger ist das Linu...
Ein WeakMap-Objekt ist eine Sammlung von Schlüsse...
Der Code sieht folgendermaßen aus: .Verfahren{ Ra...
Lassen Sie uns heute ein interessantes Thema besp...
1. Laden Sie das CentOS-Image herunter 1.1 Downlo...
WeChat Mini-Programm - QR-Code-Generator Download...
In letzter Zeit müssen folgende Effekte erzielt w...
<br />Wählen Sie das praktischste Thema aus....
Jeder, der das Linux-System verwendet hat, sollte...
Inhaltsverzeichnis Vorwort 1. Endpunkt 2. Verbind...
In diesem Artikelbeispiel wird der spezifische Co...
Rahmenstruktur-Tag <frameset></frameset&...
HTML 4 HTML (nicht XHTML), MIME-Typ ist text/html...