In diesem Artikel werden hauptsächlich die folgenden Themen vorgestellt: Implementierung der Registerkartennavigationsleiste mit Vue, Gleiten nach links und rechts mit Flex-Layout, Berechnen der Schaltflächenposition und automatisches Gleiten zum Anzeigen nicht angezeigter Elemente, wenn auf das zuletzt auf dem ersten Bildschirm angezeigte Element geklickt wird und noch Elemente vorhanden sind, die nicht angezeigt wurden. Layout der Registerkartennavigationsleiste: <Abschnitt Klasse="Themenliste"> <div Klasse="fixed-nav" ref="fixednav"> <div Klasse="fester Navigationsinhalt"> <p v-for="(Element, Index) im Thema" :Schlüssel="Index" :Klasse="['Tab-Titel', ActiveId === Index && 'Tab-Auswahl']" @click="Tab ändern(index, $ereignis)" > {{ Artikel }} </p> </div> </div> </Abschnitt> Thema: ['CSDN-Blog', 'Blog-Garten', 'Viel Glück bei der College-Aufnahmeprüfung', 'Viel Glück bei der Highschool-Aufnahmeprüfung', 'Kleine Freude', 'Siebzigster Jahrestag'], Aktive ID: 0 Code für den Stil der Navigationsleiste: .Themenliste { Rand oben: 12px; } .feste-Navigation { Überlauf-x: scrollen; -webkit-overflow-scrolling: berühren; } .fixierter-Navigationsinhalt { Anzeige: Flex; } .tab-Titel { Polsterung: 0 13px; Rand rechts: 12px; Farbe: #141414; Rahmenradius: 13px; Schriftgröße: 12px; Flex-Schrumpfen: 0; Höhe: 0,52rem; Zeilenhöhe: 0,52rem; } An dieser Stelle können wir den folgenden Stil implementieren und die Registerkarte nach links und rechts verschieben: Es ist zu beachten, dass im Stilcode Auf diese Weise wurde unsere grundlegende Tab-Navigationsleiste implementiert. Lassen Sie uns sie nun umsetzen: Wenn Sie auf „Viel Glück bei der Aufnahmeprüfung für die High School“ klicken, wird die gesamte Registerkarte nach links verschoben, um die verbleibenden Registerkartenelemente anzuzeigen. changeTab(id, Ereignis) { // Wenn die ausgewählte nicht mit der aktuell aktiven übereinstimmt if (id !== this.activeId) { diese.activeId = ID; // Berechnen Sie die Position der aktuellen Schaltfläche, um zu sehen, ob sie verschoben werden muss const spanLeft = event.clientX; // Der linke Abstand des aktuell angeklickten Elements const divBox = document.querySelector(".select-tab").clientWidth / 2; // Die halbe Breite des angeklickten Elements const totalWidths = document.body.clientWidth; // Gesamte Bildschirmbreite const widths = totalWidths / 2; // Die halbe Bildschirmbreite const spanRight = totalWidths - spanLeft; // Der rechte Abstand des Elements const scrollBox = document.querySelector(".fixed-nav"); // Holen Sie das äußerste Element const scrollL = scrollBox.scrollLeft; // Die Distanz, über die die Bildlaufleiste scrollt // Gleiten, wenn der linke oder rechte Abstand des Elements weniger als 100 beträgt if (spanRight < 100 || spanLeft < 100) { scrollBox.scrollLeft = scrollL + (spanLeft - Breiten) + divBox; } } } Mit dieser Methode lässt sich zwar ein automatisches Scrollen der Registerkarte realisieren, es besteht jedoch immer noch ein Problem: Beim Gleiten wird die Bildlaufleiste angezeigt, was offensichtlich nicht sehr schön ist. /*Definieren Sie die Höhe und Breite der Bildlaufleiste und die Höhe und Breite des Hintergrunds entsprechend der Größe der horizontalen und vertikalen Bildlaufleiste*/ ::-webkit-scrollbar { Breite: 0,01rem; Deckkraft: 0; Anzeige: keine; } /*Definieren Sie den inneren Schatten + die abgerundeten Ecken der Bildlaufleiste*/ ::-webkit-scrollbar-track { Hintergrundfarbe: #fff; Deckkraft: 0; } /*Definieren Sie den inneren Schatten + die abgerundeten Ecken des Schiebereglers*/ ::-webkit-scrollbar-thumb { Breite: 0,01rem; Randradius: 0,01rem; Deckkraft: 0; } Auf diese Weise wird eine Navigationsleiste realisiert, und der Stil der Navigationsleiste kann entsprechend der Geschäftstätigkeit des Unternehmens geändert werden! Dies ist das Ende dieses Artikels über die Implementierung einer Tab-Navigationsleiste durch Vue, die Links- und Rechtsgleiten unterstützt. Weitere relevante Inhalte zur Links- und Rechtsgleitnavigationsleiste von Vue finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Implementierung von Zugriffskontrolle und Verbindungsbeschränkung basierend auf Nginx
>>: Erläuterung der Truncate Table-Verwendung
1.1 Aufbau der Verzeichnisstruktur Dieser Vorgang...
tcpdump ist ein flexibles und leistungsstarkes To...
Warum Server-Side Rendering (SSR) verwenden? Bess...
Vorwort: Die Funktion „Gruppieren nach“ ruft das ...
In diesem Artikelbeispiel wird der spezifische Co...
Löschen Sie die zuvor installierte MariaDB 1. Ver...
Inhaltsverzeichnis Vorwort 1. cat-Befehl: 2. weit...
Definieren eines Arrays in Bash Es gibt zwei Mögl...
Ab heute werde ich regelmäßig kleine Wissenspunkte...
Inhaltsverzeichnis Vorwort Publish-Subscriber-Mus...
Kürzlich habe ich html-webapck-plugin zum ersten ...
Inhaltsverzeichnis 1. Einführung in grundlegende ...
1. Zeigen Sie die Dateien oder Verzeichnisse im V...
Heute möchte ich mit Ihnen teilen, dass der Stand...
SQL implementiert Additions-, Subtraktions-, Mult...