Heim >Web-Frontend >js-Tutorial >Wie kann ich die Höhe versteckter Elemente in jQuery effizient ermitteln?

Wie kann ich die Höhe versteckter Elemente in jQuery effizient ermitteln?

Susan Sarandon
Susan SarandonOriginal
2024-11-03 14:00:03631Durchsuche

How to Get the Height of Hidden Elements in jQuery Efficiently?

Höhe versteckter Elemente in jQuery ermitteln

Beim Umgang mit versteckten Elementen kann das Abrufen ihrer Höhe eine Herausforderung sein. Der herkömmliche Ansatz, das Element vorübergehend anzuzeigen, um seine Höhe zu messen, und es dann wieder auszublenden, erscheint ineffizient. Gibt es eine optimalere Lösung?

jQuery 1.4.2-Ansatz

Hier ist ein Beispiel mit jQuery 1.4.2:

<code class="js">$select.show();
optionHeight = $firstOption.height(); // Obtain height after displaying the element
$select.hide();</code>

Diese Methode hat den Nachteil, dass sich die Sichtbarkeit des Elements ändert, was zu unerwünschten Nebenwirkungen führen kann.

Den Stil des Elements hacken

Ein alternativer Ansatz besteht darin, den Stil des Elements zu manipulieren, um es zu erstellen unsichtbar bei der Berechnung seiner Höhe:

<code class="js">var previousCss = $("#myDiv").attr("style"); // Store the original style

// Set visibility to 'hidden' and display to 'block'
$("#myDiv").css({
    position: 'absolute', // Optional if the element is already absolute
    visibility: 'hidden',
    display: 'block'
});

optionHeight = $("#myDiv").height(); // Measure height with modified visibility

// Restore the original style
$("#myDiv").attr("style", previousCss ? previousCss : "");</code>

Das obige ist der detaillierte Inhalt vonWie kann ich die Höhe versteckter Elemente in jQuery effizient ermitteln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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