//=include is-in-viewport/lib/isInViewport.js jQuery(function($) { // // Wrigley // var wrigley = $('#wrigley'), wrigleyArm = wrigley.find('#arm'), wrigleyHead = wrigley.find('#head'), wrigleyEye = wrigley.find('#eye') var wrigleyAnimationStart = function() { // set utility classes if (wrigley.is( ':in-viewport( -180 )' ) ) { wrigley.addClass('is-ready') // toggle paused class so the :hover interaction can fire animation again wrigleyArm.on('animationend webkitAnimationEnd oAnimationEnd', function(e) { wrigleyArm.addClass('paused') wrigleyHead.addClass('paused') wrigley.on('mouseover', function() { wrigleyArm.removeClass('paused') wrigleyHead.removeClass('paused') }) // fire eye blinking once other animations have finished wrigleyEye.addClass('is-ready') wrigleyEye.on('animationend webkitAnimationEnd oAnimationEnd', function(e) { wrigleyEye.removeClass('is-ready') }) } ) } else { wrigley.removeClass('is-ready').removeClass('paused') wrigleyArm.removeClass('paused') wrigleyHead.removeClass('paused') wrigleyEye.removeClass('is-ready').removeClass('paused') } } // fire all the viewport things wrigleyAnimationStart() $(window).on('load resize scroll', wrigleyAnimationStart) })