jQuery(function ($) { $(window).on('scroll', function () { $('.parallax-box').each(function () { var box = $(this) var img = box.find('.parallax-box-img') var boxTop = box.offset().top var boxHeight = box.outerHeight() var scrollTop = $(window).scrollTop() var windowHeight = $(window).height() if (scrollTop + windowHeight > boxTop && scrollTop < boxTop + boxHeight) { var percentSeen = (scrollTop + windowHeight - boxTop) / (windowHeight + boxHeight) percentSeen = Math.min(Math.max(percentSeen, 0), 1) var translateY = (percentSeen - 0.5) * 400 img.css('transform', 'translateY(' + translateY + 'px)') } }) }) })