In diesem Artikel wird der spezifische Code von Vue zur Realisierung der verschiebbaren Höhe von Div zu Ihrer Information geteilt. Der spezifische Inhalt ist wie folgt Hier ist eine fertige Demo, die die Ziehfunktion des Seiten-Divs realisieren kann, aber der Effekt ist nicht ganz der gleiche wie ich ihn haben möchte, also habe ich ihn noch einmal entsprechend meinen tatsächlichen Anforderungen modifiziert. Schauen wir uns zuerst den aktuellen Demo-Effekt an. <Vorlage> <div id="eagleMapContainer" style="border: 1px durchgezogenes Rot;overflow-y: auto;" title=""> <div id="tz" @mousedown="dragEagle" style="border: 1px solid blue;"> <div title="Ziehen, um die Größe zu ändern" id="move_tz" style="border: 1px solid green;"></div> </div> </div> </Vorlage> <Skript> Standard exportieren { Name: "eagleMap", Daten() { zurückkehren {} }, Methoden: { dragEagle: Funktion (e) { var targetDiv = document.getElementById('eagleMapContainer'); //Breite und Höhe des Kartencontainers beim Klicken ermitteln: var ZielDivHeight = ZielDiv.OffsetHeight; var startX = e.clientX; var startY = e.clientY; var _this = dies; document.onmousemove = Funktion (e) { e.preventDefault(); //Breite und Höhe des Mauszeigers ermitteln: den absoluten Wert nehmen var distX = Math.abs(e.clientX - startX); var distY = Math.abs(e.clientY - startY); //Nach oben ziehen: wenn (e.clientY < startY) { targetDiv.style.height = targetDivHeight + distY + 'px'; } //Nach unten ziehen: wenn (e.clientX < startX && e.clientY > startY) { targetDiv.style.height = (targetDivHeight - distY) + 'px'; } wenn (parseInt(targetDiv.style.height) >= 300) { ZielDiv.Stil.Höhe = 300 + "px"; } wenn (parseInt(targetDiv.style.height) <= 150) { ZielDiv.Stil.Höhe = 150 + 'px'; } } dokument.onmouseup = Funktion () { Dokument.onmousemove = null; } } }, }; </Skript> <Stilbereich> #eagleMapContainer { Position: absolut; links: 13%; unten: 10px; Z-Index: 200; Überlauf: versteckt; Sichtbarkeit: sichtbar; Breite: 200px; Höhe: 200px; } #tz { Position: absolut; rechts: 1px; oben: 1px; Breite: 27px; Höhe: 20px; Cursor:ne-Größe ändern; Z-Index: 200001; Hintergrundbild: URL(""); } #tz:hover { Hintergrundfarbe: #666; } #move_tz { Position: absolut; rechts: 0px; oben: 0px; Breite: 27px; Höhe: 20px; Cursor:ne-Größe ändern; Z-Index: 100; Hintergrundbild: URL(""); Hintergrundposition: 0px 0px; } </Stil> Der Effekt war aber nicht ganz so wie ich ihn wollte und ich musste ihn ein wenig modifizieren. Der gewünschte Effekt ist: Ich habe ein Div, das viele kleine quadratische Listen enthält. Da das Scrollen über das Limit hinaus eingestellt ist, füge ich dem Div mit der Bildlaufleiste ein Ziehen hinzu, um eine Höhenänderung zu erreichen. Der nächste Schritt besteht darin, die obige Demo umzuwandeln. Um es einfach zu machen, gehen Sie einfach zum Code: Fügen Sie unterhalb des Divs, das nach oben gezogen werden muss, ein Div hinzu und klicken Sie auf dieses Div, um die Ziehfunktion zu starten. <!-- Kleines Kästchen per Drag & Drop ziehen --> <div id="tz" @mousedown="dragEagle"> <div title="Ziehen, um die Größe zu ändern" id="move_tz"></div> </div> Sie müssen eine ID für das Div festlegen, das seine Höhe je nach Ziehen ändert (vorausgesetzt, es handelt sich um „fuDiv“), und dann eine Methode schreiben. // ziehenEagle(e) { var targetDiv = document.getElementById('fuDiv'); //Breite und Höhe des Kartencontainers beim Klicken ermitteln: var ZielDivHeight = ZielDiv.OffsetHeight; var startX = e.clientX; var startY = e.clientY; var _this = dies; document.onmousemove = Funktion (e) { e.preventDefault(); //Breite und Höhe des Mauszeigers ermitteln: den absoluten Wert nehmen var distY = Math.abs(e.clientY - startY); //Nach oben ziehen: wenn (e.clientY < startY) { targetDiv.style.height = targetDivHeight - distY + 'px'; } //Nach unten ziehen: wenn (e.clientX < startX && e.clientY > startY) { targetDiv.style.height = (targetDivHeight + distY) + 'px'; } wenn (parseInt(targetDiv.style.height) >= 320) { ZielDiv.Stil.Höhe = 320 + 'px'; } wenn (parseInt(targetDiv.style.height) <= 160) { ZielDiv.Stil.Höhe = 160 + "px"; } } dokument.onmouseup = Funktion () { Dokument.onmousemove = null; } }, Legen Sie dann den CSS-Stil für sie fest. Tatsächlich ist dieser Teil unkompliziert und kann nach Ihren eigenen Wünschen gestaltet werden. #tz { Breite: 100 %; Höhe: 5px; Cursor: s-Größe ändern; Z-Index: 200001; } #move_tz { Breite: 100 %; Höhe: 5px; Cursor: s-Größe ändern; Z-Index: 100; Hintergrundbild: URL(""); Hintergrundposition: 0px 0px; } Endergebnis: Die Wirkung ist nicht besonders gut und es gibt noch viele Bereiche, die einer Optimierung bedürfen, über die ich jetzt aber nicht schreibe. 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:
|
>>: Erklärung des HTML-Codes der Webseite: geordnete Liste und ungeordnete Liste
Die Haupttextseite von TW hatte früher eine Breite...
Ref-Definition: Wird verwendet, um Referenzinform...
1. Was ist Als Auszeichnungssprache hat CSS eine ...
Erstens kann JavaScript aus Sicherheitsgründen ni...
Webseiten enthalten sehr komplexe HTML-Strukturen...
Installieren von MySQL 5.7 aus TAR.GZ auf Mac OS ...
Die Seitenlänge im Projekt beträgt etwa 2000 Pixe...
Lesetipp: MySQL 8.0.19 unterstützt Kontosperrfunk...
dieses Schlüsselwort Welches Objekt ruft die Funk...
Inhaltsverzeichnis Schriftarten mit font-face ric...
Um die Wirkung direkt zu sehen, wurde ein Rechtsk...
<br />Tabelle ist ein Tag, das schon seit la...
In diesem Artikelbeispiel wird der spezifische Co...
Inhaltsverzeichnis 1. Ziele 2. Umweltvorbereitung...
veranschaulichen Dieser Artikel wurde am 20.05.20...