Forked from EvanHerman/check-if-element-in-viewport-on-scroll.js
Created
March 18, 2019 03:51
-
-
Save amrelarabi/4271bb17d56025e96e74997bfc3dfb6f to your computer and use it in GitHub Desktop.
Check when an element comes into view (jQuery)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function isOnScreen(elem) { | |
// if the element doesn't exist, abort | |
if( elem.length == 0 ) { | |
return; | |
} | |
var $window = jQuery(window) | |
var viewport_top = $window.scrollTop() | |
var viewport_height = $window.height() | |
var viewport_bottom = viewport_top + viewport_height | |
var $elem = jQuery(elem) | |
var top = $elem.offset().top | |
var height = $elem.height() | |
var bottom = top + height | |
return (top >= viewport_top && top < viewport_bottom) || | |
(bottom > viewport_top && bottom <= viewport_bottom) || | |
(height > viewport_height && top <= viewport_top && bottom >= viewport_bottom) | |
} | |
jQuery( document ).ready( function() { | |
window.addEventListener('scroll', function(e) { | |
if( isOnScreen( jQuery( '.shipping-logos' ) ) ) { /* Pass element id/class you want to check */ | |
alert( 'The specified container is in view.' ); | |
} | |
}); | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment