Possible Duplicate:
How to detect page scroll to a certain point in jQuery?
Check if element is visible after scrolling
How can I detect when the user has reached this div:
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /> <div id="theTarget">I have been reached</div> Got the answer from this question:
Check if element is visible after scrolling
So I just did this:
function isScrolledIntoView(elem) { var docViewTop = $(window).scrollTop(); var docViewBottom = docViewTop + $(window).height(); var elemTop = $(elem).offset().top; var elemBottom = elemTop + $(elem).height(); return ((elemBottom >= docViewTop) && (elemTop <= docViewBottom) && (elemBottom <= docViewBottom) && (elemTop >= docViewTop)); } $(window).scroll(function() { if(isScrolledIntoView($('#theTarget'))) { alert('visible'); } });
Compare the page scroll position to your element top position, than call your function.
jQuery
$(document).on('scroll', function() { if ($(this).scrollTop() >= $('#theTarget').position().top) { console.log('I have been reached'); } }) <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.0/jquery.min.js"></script> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <div id="theTarget">I have been reached</div> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> ES6 (Pure JS, no jQuery)
var target = document.querySelector('#theTarget'); document.addEventListener('scroll', () => { if (window.scrollY >= target.getBoundingClientRect().top) { console.log('I have been reached'); } }) <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <div id="theTarget">I have been reached</div> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> I think you can accomplish your goal by comparing values from your div position
var divPosition = $("#theTarget").offset().top; and the window scroll position
var scrollPosition = window.scrollY;
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With