Heim > Web-Frontend > js-Tutorial > Wie kann ich Dimensionsänderungen von DIV-Elementen zuverlässig erkennen?

Wie kann ich Dimensionsänderungen von DIV-Elementen zuverlässig erkennen?

Patricia Arquette
Freigeben: 2024-11-24 20:51:27
Original
395 Leute haben es durchsucht

How Can I Reliably Detect DIV Element Dimension Changes?

Erkennen von Dimensionsänderungen von DIV-Elementen

Sie sind auf Schwierigkeiten beim Erkennen von Dimensionsänderungen eines DIV-Elements gestoßen, wenn die Größe des Browserfensters geändert wird. In dieser Frage werden mögliche Lösungen für dieses Problem untersucht.

jQuery-Resize-Ereignisbindung

Ihr erster Ansatz, die Rückruffunktion an das jQuery-Resize-Ereignis auf dem DIV zu binden, ist falsch. Das Größenänderungsereignis wird nur ausgelöst, wenn die Größe des Fensters geändert wird, nicht wenn sich die Abmessungen des DIV ändern.

Lösung: Resize Observer API

Eine neuere Lösung ist die Größenänderung Observer-API, die eine gute Browserunterstützung bietet. Mit dieser API können Sie Änderungen in den Abmessungen eines Elements beobachten:

const observer = new ResizeObserver((entries) => {
  // Code to handle dimension changes
});

observer.observe(targetElement);
Nach dem Login kopieren

Im bereitgestellten HTML-Beispiel können Sie die Resize Observer API wie folgt verwenden:

const textbox = document.getElementById('textbox');
const width = document.getElementById('width');
const height = document.getElementById('height');

const observer = new ResizeObserver(() => {
  width.value = textbox.offsetWidth;
  height.value = textbox.offsetHeight;
});

observer.observe(textbox);
Nach dem Login kopieren

Dieser Code aktualisiert die Breiten- und Höhenausgaben, wenn sich die Abmessungen des Textfelds ändern.

Das obige ist der detaillierte Inhalt vonWie kann ich Dimensionsänderungen von DIV-Elementen zuverlässig erkennen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage