JavaScript zum Erzielen eines einfachen Drag-Effekts

JavaScript zum Erzielen eines einfachen Drag-Effekts

In diesem Artikel wird der spezifische JavaScript-Code zur Erzielung eines einfachen Drag-Effekts als Referenz bereitgestellt. Der spezifische Inhalt ist wie folgt

1. Bauen Sie zuerst das Gerüst auf:

* {
            Rand: 0;
            Polsterung: 0;
        }
        
        P {
            Hintergrund: himmelblau;
            Textausrichtung: zentriert;
        }
        
        html,
        Körper {
            Breite: 100 %;
            Höhe: 100%;
        }
        
        .Maske {
            Breite: 100 %;
            Höhe: 100%;
            Position: fest;
            links: 0;
            oben: 0;
            Hintergrund: rgba(0, 0, 0, .5);
            Anzeige: keine;
        }
        
        .Anmelden {
            Breite: 400px;
            Höhe: 300px;
            Hintergrund: lila;
            Position: absolut;
            links: 50%;
            oben: 50 %;
            transformieren: übersetzen(-50 %, -50 %);
            Anzeige: keine;
            Cursor: bewegen;
        }
        
        .login>span {
            Anzeige: Inline-Block;
            Breite: 50px;
            Höhe: 50px;
            Hintergrund: rot;
            Position: absolut;
            oben: 0;
            rechts: 0;
        }
<p>Ich bin ein P-Tag</p>
    <a href="http://www.baidu.com" >Offizielle Website</a>
    <div Klasse="Maske"></div>
    <div Klasse="Anmelden">
        <span></span>
</div>

2. Logischer Teil

//1. Das zu bearbeitende Element abrufen const oP = document.querySelector("p");
const oMask = document.querySelector(".mask");
const oLogin = document.querySelector(".login");
const oClose = oLogin.querySelector(".login>span");
// console.log(oSchließen);
 
//2. Auf Klickereignisse warten oP.onclick = function() {
    oMask.style.display = "Block";
    oLogin.style.display = "Block";
        };
        oSchließen.onclick = function() {
            oMask.style.display = "keine";
            oLogin.style.display = "keine";
        };
 
//3. Warten Sie auf die Druck- und Bewegungsereignisse des Anmeldefelds oLogin.onmousedown = function(e) {
            e = e || e.Fenster;
 
            //1. Berechnen Sie die feste Distanz const x = e.pageX - oLogin.offsetLeft;
            const y = e.pageY - oLogin.offsetTop;
            // console.log(x);
 
            //2. Auf mobile Ereignisse warten oLogin.onmousemove = function(e) {
                e = e || e.Fenster;
 
                //3. Berechnen Sie den Offset nach der Verschiebung let offsetX = e.pageX - x;
                sei offsetY = e.pageY - y;
 
                //4. Position des Anmeldefelds zurücksetzen oLogin.style.left = offsetX + 'px';
                oLogin.style.top = offsetY + 'px';
            };
        };
 
        oLogin.onmouseup = Funktion() {
            oLogin.onmousemove = null;
        }; 

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:
  • JQuery-Dialog (JS-Modalfenster, verschiebbares DIV)
  • Analyse der Verwendung der Drag & Drop-Sortierung von Sortable.js
  • js, um einen Drag-Effekt zu erzielen
  • JavaScript implementiert die Touchscreen-Drag-Funktion auf mobilen Endgeräten
  • Einfacher Drag-Effekt mit js implementiert
  • JS realisiert einen schönen Fenster-Drag-Effekt (Größe kann geändert, maximiert, minimiert, geschlossen werden)
  • Beispiel einer Drag-and-Drop-Upload-Funktion für Dateien, die von JS implementiert wurde
  • Verwenden von Javascript zum Implementieren von Maus-Drag-Ereignissen
  • Implementierungscode für den Drag-Effekt der JS-Komponente Bootstrap Table Table
  • JS implementiert die Touchscreen-Drag-Funktion auf Mobilgeräten

<<:  HTML-Code, der den Internet Explorer zum Einfrieren bringen kann

>>:  Lernen Sie, mit Eclipse eine Verbindung zur MySQL-Datenbank herzustellen

Artikel empfehlen

Vollständiger Prozessbericht der Nginx-Reverse-Proxy-Konfiguration

1. Vorbereitung Installieren Sie Tomcat auf dem L...

Erläuterung von JavaScript-Mikrotasks und Makrotasks

Vorwort: js ist eine Single-Thread-Sprache, daher...

Lösung für die verstümmelte Anzeige von Linux SecureCRT

Sehen wir uns die Situation an, in der SecureCRT ...

CSS-Rand halb oder teilweise sichtbarer Implementierungscode

1. Verwenden Sie Pseudoklassen, um die Hälfte des...

CentOS 7.x-Bereitstellung von Master- und Slave-DNS-Servern

1. Vorbereitung Beispiel: Zwei Maschinen: 192.168...

Vue implementiert die vollständige Auswahlfunktion

In diesem Artikelbeispiel wird der spezifische Co...

Zusammenfassung zum Hinzufügen von Root-Berechtigungen für Benutzer in Linux

1. Fügen Sie einen Benutzer hinzu . Verwenden Sie...

Fünf Möglichkeiten zur Implementierung der Vererbung in js

Ausleihen von Konstruktoren Die Grundidee dieser ...

Detaillierte Erklärung zur Abfrage von Feldern im JSON-Format in MySQL

Während des Entwicklungsprozesses trat eine Anfor...