2015-07-09 2 views
0

В настоящее время у меня есть кусок jQuery, который добавляет класс анимации css в div, когда он находится на некотором расстоянии от верхней части страницы. Этот jQuery не очень хорошо переводит на мобильный. Мне интересно, есть ли способ добавить класс, когда div отображается на странице (viewport), чтобы он хорошо работал на всех устройствах.addClass if in Viewport

$(window).scroll(function() { 
    $('#about-image-1').each(function(){ 
    var imagePos = $(this).offset().top; 

    var topOfWindow = $(window).scrollTop(); 
     if (imagePos < topOfWindow+600) { 
      $(this).addClass("fadeIn"); 
     } 
    }); 
}); 

ответ

0

Следующий код работал большой:

$(window).scroll(function() { 
$("#about-image-1").each(function() { 
    $this = $(this); 
    isOnView = isElementVisible($(this)); 
    if(isOnView && !$(this).hasClass('fadeIn')){ 
     $(this).addClass('fadeIn'); 
     startAnimation($(this)); 
    } 
}); 
});