Jquery: Elementsichtbarkeit im Ansichtsfenster bestimmen
Bei diesem häufigen Problem suchen Benutzer häufig nach einer Methode, um festzustellen, ob ein Element im Ansichtsfenster sichtbar ist Browser-Ansichtsfenster. Um dieses Problem anzugehen, wird in dieser Diskussion eine Lösung mithilfe einer jQuery-Funktion untersucht.
Bestimmen der Elementsichtbarkeit
Um festzustellen, ob ein Element im Ansichtsfenster sichtbar ist, können wir definieren eine jQuery-Funktion:
<code class="javascript">$.fn.isInViewport = function() { var elementTop = $(this).offset().top; var elementBottom = elementTop + $(this).outerHeight(); var viewportTop = $(window).scrollTop(); var viewportBottom = viewportTop + $(window).height(); return elementBottom > viewportTop && elementTop < viewportBottom; };</code>
Diese Funktion berechnet die oberen und unteren Koordinaten des Elements und des Ansichtsfensters. Durch den Vergleich dieser Werte wird ermittelt, ob sich das Element teilweise im Ansichtsfenster befindet.
Verwendung
Um diese Funktion zu verwenden, können Sie den folgenden Code in Ihr Skript einbinden:
<code class="javascript">$(window).on('resize scroll', function() { if ($('#Something').isInViewport()) { // Do something when the element is in viewport } else { // Do something when the element is out of viewport } });</code>
Dieser Ereignishandler überprüft die Scroll- und Größenänderungsereignisse, um kontinuierlich die Sichtbarkeit des Elements mit der ID „Etwas“ zu überwachen.
Überlegungen
Dieser Ansatz überprüft nur die vertikale Position des Elements. Für die horizontale Sichtbarkeit müssten Sie zusätzliche Logik implementieren oder eine Bibliothek eines Drittanbieters verwenden, die sowohl horizontale als auch vertikale Positionen verarbeitet.
Das obige ist der detaillierte Inhalt vonHier sind einige Titel im Fragestil, die auf Ihrem Artikel basieren: * **So überprüfen Sie mit jQuery, ob ein Element im Ansichtsfenster sichtbar ist** * **jQuery: Bestimmen der Elementsichtbarkeit im Browserfenster. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!