var el = document.getElementById('head'); // caching it for better performance var steady = new Steady({ throttle: 100, handler: function(el, done) { console.log('woo!'); // this important to tell Steady that you finished processing so it can call you later done(); } }); steady.addTracker('is-visible-head', function(){ var rect = el.getBoundingClientRect(); return ( rect.top >= 0 && rect.left >= 0 && rect.top <= (window.innerHeight || document.documentElement.clientHeight) ); }); steady.addCondition('is-visible-head', true);