Vue implementiert eine gleitende Navigation oben links und rechts

Vue implementiert eine gleitende Navigation oben links und rechts

Navigation und andere Dinge werden bei der täglichen Entwicklung häufig verwendet. Schreiben Sie daher einen Artikel, um sie aufzuzeichnen. Die Navigation erfolgt durch Anklicken der End-/Anfangsposition und die Navigation blendet automatisch das nächste Element ein .

Idee: Bestimmen Sie die Position des aktuell angeklickten Elements relativ zum Bildschirm. Wenn die angeklickte Position die Bewegungsbeschränkungen erfüllt, führen Sie eine automatische Gleitverarbeitung durch.

Die Implementierung ist wie folgt:

Ansicht

<Vorlage>
  <div Klasse="Debug-Index-Seite">
    <div Klasse="tab-layout" id="scroller">
      <ul v-for="(tab, idx) in tabList" :key="idx">
        <li
          :id="`tab-${tab.id}`"
          Klasse="Tab-Element"
          @click="beimKlicken aufTab(Tab)"
          :style="`Hintergrund:${tab.select ? 'rot' : 'keine'}`"
        >
          {{ tab.text }}
        </li>
      </ul>
    </div>
  </div>
</Vorlage>

JS

Standard exportieren {

    Daten() {
        zurückkehren {
            RegisterkarteListe: [],
        }
    },

    erstellt() {
        lass Liste = [
            "Meine Adligen",
            "Edel 1",
            "Mein Edel 2",
            "Edle 3",
            "Edle 4",
            "Edle 5",
            "Meine edle 6",
            "Meine edle 7",
        ];

        Liste.fürJeden((Text, idx) => {
            diese.tabList.push({
                Text,
                id: idx, // Registerkartenkennung select: idx == 0, // ob es ausgewählt ist index: idx // wo es angezeigt wird });
        });
    },

    berechnet: {
        aktuellerTab() {
            gibt dies zurück.tabList.find(v => v.select);
        }
    },

    Methoden: {

        beiKlickTab(tabInfo) {
            lass curTab = dies.curTab;
            wenn (curTab.id == tabInfo.id) zurückgeben;
            let { index, id } = tabInfo;
            // Schieberegler let scroller = document.getElementById("scroller");
            lass Geschwindigkeit = scroller.scrollWidth / this.tabList.length;
            let tab = document.getElementById(`tab-${id}`);
            let bWidth = Dokument.Body.ClientWidth;
            // Klicken Sie rechts if (curTab.index < index && tab.clientWidth * index >= bWidth - speed) {
            // Gleitdistanz scroller.scrollLeft = (Index + 2) * Geschwindigkeit - bWidth;
            } sonst wenn (curTab.index > index && (tab.clientWidth * index - (scroller.scrollLeft + bWidth) < speed)) {
            // Gleitdistanz scroller.scrollLeft = (Index - 1) * Geschwindigkeit;
            }

            curTab.select = falsch;
            Dies.tabList[index].select = true;
        }
    }
}

weniger

.debug-index-page {
    Breite: 100 %;
    Überlauf: versteckt;


  .tab-layout {
    Breite: 100 %;
    Überlauf-x: scrollen;
    Anzeige: Flex;

    .tab-item {
      Breite: 1rem;
      Textausrichtung: zentriert;
    }
  }
}

Oben ist die Navigationsanzeige.

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Vue implementiert eine Registerkartennavigationsleiste und unterstützt die Schiebefunktion nach links und rechts
  • Vue implementiert Beispielcode für Links- und Rechtsgleiteffekte
  • Vue + Swiper implementiert die Testfragefunktion zum Schieben nach links und rechts
  • Vue verwendet den Swiper zum Wechseln von Bildern durch Wischen nach links und rechts
  • Vue verwendet Better-Scroll, um Gleiten und Links-Rechts-Verknüpfung zu erreichen
  • Detaillierte Erläuterung der Links- und Rechtsschiebeereignisse auf dem Vue-Mobilterminal
  • Das mobile Terminal von Vue realisiert die Animation des nach links und rechts gleitenden Mobiltelefons
  • So realisieren Sie einen Links- und Rechts-Gleiteffekt auf mobilen Endgeräten in Vue
  • Implementierung des Links- und Rechtsschiebeeffekts beim Seitenwechsel basierend auf Vue
  • Detaillierte Erläuterung der Verwendung der linken und rechten Schiebetastengruppenkomponente von Vue

<<:  So aktualisieren Sie CentOS7 auf CentOS8 (detaillierte Schritte)

>>:  Einführung in die MySQL-Ansicht und Tutorial zur grundlegenden Bedienung

Artikel empfehlen

Lösung zur Deinstallation von Python und Yum im CentOs-System

Hintergrund des Unfalls: Vor einigen Tagen habe i...

MySQL 8.0.12 Installationskonfigurationsmethode und Kennwortänderung

In diesem Artikel werden die Installations- und K...

Verwenden Sie CSS, um einen kreisförmigen Welleneffekt zu erzielen

Auf Mobilgeräten sehe ich häufig kreisförmige Wel...

Der Unterschied und die Wahl zwischen Datum und Uhrzeit und Zeitstempel in MySQL

Inhaltsverzeichnis 1 Unterschied 1.1 Raumbelegung...

Implementierung mehrerer Tomcat-Instanzen auf einer einzigen Maschine

1. Einleitung Zunächst müssen wir eine Frage bean...

Detaillierte Zusammenfassung des JavaScript-Arrays

Inhaltsverzeichnis 1. Array-Induktion 1. Teilen S...

CocosCreator-Tutorial für den Einstieg: Erstellen Sie Ihr erstes Spiel mit TS

Inhaltsverzeichnis Prämisse TypeScript vs. JavaSc...

Beispielcode, wie CSS mehrere Klassen abgleicht

CSS stimmt mit mehreren Klassen überein Das folge...

Verstümmelte Zeichen und Lösungen im MySQL-Zeichensatz

Vorwort Ein Zeichensatz ist eine Reihe von Symbol...