Heim >Web-Frontend >CSS-Tutorial >Wie erstelle ich skalierbare HTML-Elemente mit reinem JavaScript?
Anpassbare HTML-Elemente mit reinem JavaScript erstellen
Es gibt zahlreiche Bibliotheken, um die Größenänderung von Elementen zu ermöglichen, aber für diejenigen, die eine reine JavaScript-Lösung suchen, gibt es Folgendes Schritte können verwendet werden:
Hier ist ein Beispielcode-Snippet, das diesen Ansatz implementiert:
var p = document.querySelector('p'); // element to make resizable p.addEventListener('click', function init() { p.removeEventListener('click', init, false); p.className = p.className + ' resizable'; var resizer = document.createElement('div'); resizer.className = 'resizer'; p.appendChild(resizer); resizer.addEventListener('mousedown', initDrag, false); }, false); var startX, startY, startWidth, startHeight; function initDrag(e) { startX = e.clientX; startY = e.clientY; startWidth = parseInt(document.defaultView.getComputedStyle(p).width, 10); startHeight = parseInt(document.defaultView.getComputedStyle(p).height, 10); document.documentElement.addEventListener('mousemove', doDrag, false); document.documentElement.addEventListener('mouseup', stopDrag, false); } function doDrag(e) { p.style.width = (startWidth + e.clientX - startX) + 'px'; p.style.height = (startHeight + e.clientY - startY) + 'px'; } function stopDrag(e) { document.documentElement.removeEventListener('mousemove', doDrag, false); document.documentElement.removeEventListener('mouseup', stopDrag, false); }
Beachten Sie, dass dieser Ansatz möglicherweise nicht mit allen Browsern und Internet Explorer niedrigeren Versionen kompatibel ist Es ist insbesondere bekannt, dass es bei Nr. 9 Probleme gibt.
Das obige ist der detaillierte Inhalt vonWie erstelle ich skalierbare HTML-Elemente mit reinem JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!