Das mobile Vue-Terminal realisiert den Finger-Gleiteffekt

Das mobile Vue-Terminal realisiert den Finger-Gleiteffekt

In diesem Artikelbeispiel wird der spezifische Code für das mobile Vue-Terminal zur Erzielung eines Finger-Gleiteffekts als Referenz bereitgestellt. Der spezifische Inhalt ist wie folgt

Beim Gleiten ändert sich die Breite des gelben Blocks entsprechend. Dies wird durch Berühren und Klicken realisiert. Derzeit habe ich das Gefühl, dass die Breitenänderung einige Probleme bereitet. Ich denke noch darüber nach.

Hier ist der Code:

<template lang="html">
  <div class="zurück" ref="zurück" @touchstart.prevent="touchStart" @touchmove.prevent="touchMove">
    <div Klasse="zurück-r" 
 @touchstart.prevent="touchStarten" @touchmove.prevent="touchBewegen"
 @touchend="BerührungEnde"
 ref="rechts"></div>
  </div>
</Vorlage>
 
<Skript>
Standard exportieren {
  Daten() {
  },
  erstellt() {
    dies.berühren = {}
  },
  Methoden: {
    touchStart(e) {
      const touch = e.touches[0]
   
  //Die Position beim Klicken auf this.touch.startX = touch.pageX
      dies.touch.startY = touch.pageY
   Konsole.log('----',this.$refs.right.clientWidth)
    },
//Starten Sie den Klick touchMove(e) {
      console.log("verschieben");
      const touch = e.touches[0]
   //Die Differenz zwischen der Gleitposition und der Ausgangsposition const deltaX = touch.pageX - this.touch.startX
   console.log(deltaX)
      const deltaY = touch.pageY - this.touch.startY;
      //Rechte Breite drucken console.log('----',this.$refs.right.clientWidth+'px') 
   const rwidth = this.$refs.right.clientWidth
   //Ändern Sie die Breite rechts this.$refs.right.style.width = (this.$refs.right.clientWidth + Math.floor(deltaX/50)) +'px'
   //Beurteilen Sie, ob die Breite kleiner als 0 oder größer als 400 ist
   wenn (rwidth<0) {
    dies.$refs.right.style.width = 0
   } sonst wenn(rwidth>400){
    dies.$refs.right.style.width = 400+'px'
   } 
   Konsole.log('----',this.$refs.right.clientWidth+'px')

    },
    touchEnd() {
      console.log("Ende");
      // konsole.log(dieses.Prozent);
    }
  }
}
</Skript>
 
<style scoped lang="Stift" rel="stylesheet/Stift">
Körper{
  Rand: 0;
  Polsterung: 0;
  Überlauf: versteckt;
  Berührungsaktion: keine;
}
.zurück{
 Breite: 100%
 Höhe: 100px
 Rand 10px durchgezogen #0000FF
 Überlauf: versteckt;
}
  
  
  .zurück-r{
   // Anzeige: Inline-Block
   // vertikale Ausrichtung: oben
   Position: relativ
   Breite: 400px
   Höhe: 100%
   Überlauf: versteckt;
   Hintergrundfarbe: gelb
  }
    
</Stil>

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:
  • Beispielcode für das mobile Gleitereignis Vue2.0 Vue-Touch
  • So realisieren Sie einen Links- und Rechts-Gleiteffekt auf mobilen Endgeräten in Vue
  • Benutzerdefinierte mobile Touch-Ereignisse von Vue: Klick-, Wisch- und lange Druckereignisse
  • Detaillierte Erklärung der mobilen Vue-Touch-Gesten

<<:  Detaillierte Installation und Verwendung von Docker-Compose

>>:  So stellen Sie eine Datenbank und eine Tabelle aus einer vollständigen MySQL-Datenbanksicherung wieder her

Artikel empfehlen

Hexadezimale Farbcodes (vollständig)

Rot und Pink und ihre Hexadezimalcodes. #990033 #...

Verwandte Vorgänge zum Hinzufügen und Löschen von Indizes in MySQL

Inhaltsverzeichnis 1. Die Rolle des Index 2. Erst...

43 Webdesign-Fehler, auf die Webdesigner achten sollten

Dies ist ein Artikel über die Benutzerfreundlichk...

JS-Implementierung eines Karussellbeispiels

In diesem Artikel wird der spezifische JS-Code zu...

Ein paar Dinge, die Sie über responsives Layout wissen müssen

1. Einleitung Responsive Webdesign ermöglicht die...

So bereinigen Sie den von Docker belegten Speicherplatz

Docker nimmt viel Platz ein. Immer wenn wir Conta...

Was sind die Verwendungszwecke von Limits in MySQL (empfohlen)

SELECT * FROM Tabellenname Limit m,n; SELECT * FR...

Beispiel für den Aufbau eines Jenkins-Dienstes mit Docker

Ziehen Sie das Bild root@EricZhou-MateBookProX: D...

SSH-Schlüsselpaare von einer oder mehreren Linux-Instanzen trennen

Schlüsselpaar trennen Trennen Sie SSH-Schlüsselpa...

Kurze Analyse der verschiedenen Versionen des mysql.data.dll-Treibers

Hier ist der MySQL-Treiber mysql.data.dll Beachte...