Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var animate_scroll_listener;
- function begin_scroll_checker() {
- animate_scroll_listener = scroll_check();
- window.addEventListener('scroll', animate_scroll_listener);
- }
- begin_scroll_checker();
- var watch_elements = $('.watch-scroll');
- var scrolled_elements = 0;
- function scroll_check() {
- return function scroll_event() {
- watch_elements.each(function(){
- if( $(this).hasClass('animate') ) return;
- if( isElementInViewport(this) ) {
- // Element is in viewport, click
- $(this).addClass('animate');
- scrolled_elements++;
- }
- });
- if( scrolled_elements >= watch_elements.length ) {
- // no more elements, remove scroll event
- window.removeEventListener('scroll', animate_scroll_listener);
- }
- }
- }
- function isElementInViewport(el) {
- if ( document.documentElement.clientWidth <= 767 && document.documentElement.clientHeight < document.documentElement.clientWidth ) {
- return $(el).is(':visible');
- }
- if (typeof jQuery === "function" && el instanceof jQuery) {
- el = el[0];
- }
- var rect = el.getBoundingClientRect();
- return (
- rect.top >= 0 &&
- rect.left >= 0 &&
- rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&
- rect.right <= (window.innerWidth || document.documentElement.clientWidth)
- );
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement