In diesem Artikelbeispiel wird der spezifische Code von Vue zur Realisierung der schwebenden Schaltfläche, die zu Ihrer Referenz überall verschoben werden kann, geteilt. Der spezifische Inhalt ist wie folgt 1.html-Code <div Klasse = "Rückruf-Float" @click="beimKlick" @mousedown="runter" @touchstart="nach unten" @mousemove="bewegen" @touchmove="bewegen" @mouseup="Ende" @touchend="Ende" ref="fu" > <!-- <p @click="callback">Zurück</p> --> <img @click="callback" src="@/assets/images/callbs.jpg" alt /> </div> 2. Definieren Sie in Daten Daten() { zurückkehren { wird geladen: false, flags: false, //Position der Steuerung verwenden: { x: 0, y: 0, }, nx: "", ny: "", dx: "", dy: "", xPum: "", yPum: "", }; }, 3.js-Code Methoden: { Rückruf() { dies.$router.go(-1); }, beiAktualisieren() { // Fenster.Standort.neu laden(); setzeTimeout((res) => { konsole.log(res); dies.isLoading = falsch; }, 1000); }, runter() { dies.flags = wahr; var berühren; wenn (Ereignis.berührt) { berühren = Ereignis.Berührungen[0]; } anders { Berührung = Ereignis; } diese.position.x = touch.clientX; diese.position.y = touch.clientY; dies.dx = dies.$refs.fu.offsetLeft; dies.dy = dies.$refs.fu.offsetTop; }, bewegen() { wenn (diese.flags) { var berühren; wenn (Ereignis.berührt) { berühren = Ereignis.Berührungen[0]; } anders { Berührung = Ereignis; } dies.nx = touch.clientX - diese.position.x; dies.ny = touch.clientY - diese.position.y; dies.xPum = dies.dx + dies.nx; dies.yPum = dies.dy + dies.ny; let width = window.innerWidth - this.$refs.fu.offsetWidth; //Bildschirmbreite minus Steuerelementbreite let height = window.innerHeight - this.$refs.fu.offsetHeight; //Bildschirmhöhe minus Steuerelementhöhe this.xPum < 0 && (this.xPum = 0); dies.yPum < 0 und (dies.yPum = 0); this.xPum > Breite && (this.xPum = Breite); this.yPum > Höhe && (this.yPum = Höhe); // wenn (this.xPum >= 0 && this.yPum >= 0 && this.xPum<= Breite &&this.yPum<= Höhe) { dies.$refs.fu.style.left = dies.xPum + "px"; dies.$refs.fu.style.top = dies.yPum + "px"; // } //Verhindert standardmäßig das Verschieben der Seite document.addEventListener( "Berührungsbewegung", Funktion () { event.preventDefault(); }, FALSCH ); } }, //Funktion wenn die Maus losgelassen wird end() { diese.flags = falsch; }, beiKlick() { //Hier verwende ich dies als Unterkomponente this.$emit("click"); }, }, 4.Stil <Stilbereich> .callback p { Schriftgröße: 16px; Farbe: #fff; Hintergrund: rgba(56, 57, 58, 0,5); Randradius: 50 %; Textausrichtung: zentriert; Breite: 50px; Höhe: 50px; Zeilenhöhe: 50px; Schriftfamilie: PingFang SC; Schriftstärke: 600; Kastenschatten: 0 0 10px #fff; } .callback img { Anzeige: Block; Breite: 50px; Höhe: 50px; Kastenschatten: 0 0 10px rgb(133, 129, 129); Randradius: 50 %; Hintergrund: #fff; } .rückruf { Position: fest; oben: 40px; links: 20px; Z-Index: 99999; } .schweben { Position: fest; rechts: 20px; oben: 60 %; Touch-Aktion: keine; Textausrichtung: zentriert; Breite: 50px; Höhe: 50px; Rahmenradius: 24px; Zeilenhöhe: 48px; Farbe: weiß; } </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:
|
<<: So deaktivieren Sie Anzeigen in der Terminal-Willkommensnachricht in Ubuntu Server
>>: Fehler MySQL-Tabelle 'performance_schema...Lösung
Code kopieren Der Code lautet wie folgt: <span...
1 Wirkung Demo-Adresse: https://www.albertyy.com/...
Einschließlich der Verwendung von Kontrollkästchen...
Die Methoden zur Installation von Nginx und mehre...
Bei in SASS definierten Variablen überschreibt de...
Das Erstellen eines React-Projekts kann sehr einf...
Die meisten Leute kompilieren MySQL und legen es ...
Inhaltsverzeichnis Überblick Same-Origin-Policy (...
Bei der Verwendung von IIS als Server wurde die A...
Verzeichnisstruktur . │ .env │ docker-compose.yml...
Sublime Text 2 ist ein leichter, einfacher, effiz...
Wir alle kennen die MySQL-Funktion count(), mit d...
Inhaltsverzeichnis 1. Vue2-Syntax 2. Nutzung von ...
Grammatik Hier ist die allgemeine SQL-Syntax für ...
Beim Starten von MySQL in einer OS X-Umgebung wir...