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
Problem: Der Überlauf der Auto-Increment-ID in ei...
Schauen wir uns zunächst die relativen Längeneinh...
Das Anwendungsszenario ist: Die Iframe-Seite hat k...
1. Transaktionsmerkmale (ACID) (1) Atomarität. Di...
Schauen Sie sich zuerst die Lösung an #----------...
1: Unterschiede bei Geschwindigkeit und Lademethod...
Vier Netzwerktypen: Keine: Konfigurieren Sie kein...
Mit den richtigen Einstellungen können Sie Linux-...
Inhaltsverzeichnis 1. Berechnete Eigenschaften 1....
In diesem Artikel wird der spezifische Code von j...
Dieser Artikel basiert auf dem Free Code Camp Bas...
Pseudo-Arrays und Arrays In JavaScript sind mit A...
Inhaltsverzeichnis 1. Projektordnerstruktur 1. As...
Inhaltsverzeichnis 1. Komponenteneinführung 2. In...
Einführung: Dieser Artikel verwendet das von reac...