diff --git a/src/definitions/behaviors/visibility.js b/src/definitions/behaviors/visibility.js index 2a0483c2f..85362fc6c 100644 --- a/src/definitions/behaviors/visibility.js +++ b/src/definitions/behaviors/visibility.js @@ -567,7 +567,7 @@ $.fn.visibility = function(parameters) { calculations = module.get.elementCalculations(), screen = module.get.screenCalculations() ; - callback = callback || false; + callback = callback || false; if(callback) { if(settings.continuous) { module.debug('Callback being called continuously', callbackName, calculations); @@ -638,7 +638,7 @@ $.fn.visibility = function(parameters) { screen = module.get.screenSize() ; module.verbose('Saving element position'); - // build (quicker than extend) + // (quicker than $.extend) element.margin = {}; element.margin.top = parseInt($module.css('margin-top'), 10); element.margin.bottom = parseInt($module.css('margin-bottom'), 10); @@ -652,39 +652,40 @@ $.fn.visibility = function(parameters) { }, elementCalculations: function() { var - element = module.cache.element, - screen = module.get.screenCalculations(), - element = module.get.elementPosition() + screen = module.get.screenCalculations(), + element = module.get.elementPosition() ; // offset if(settings.includeMargin) { - module.cache.element.top = element.offset.top - element.margin.top; - module.cache.element.bottom = element.offset.top + element.height + element.margin.bottom; + element.top = element.offset.top - element.margin.top; + element.bottom = element.offset.top + element.height + element.margin.bottom; } else { - module.cache.element.top = element.offset.top; - module.cache.element.bottom = element.offset.top + element.height; + element.top = element.offset.top; + element.bottom = element.offset.top + element.height; } // visibility - module.cache.element.topVisible = (screen.bottom >= element.top); - module.cache.element.topPassed = (screen.top >= element.top); - module.cache.element.bottomVisible = (screen.bottom >= element.bottom); - module.cache.element.bottomPassed = (screen.top >= element.bottom); - module.cache.element.pixelsPassed = 0; - module.cache.element.percentagePassed = 0; + element.topVisible = (screen.bottom >= element.top); + element.topPassed = (screen.top >= element.top); + element.bottomVisible = (screen.bottom >= element.bottom); + element.bottomPassed = (screen.top >= element.bottom); + element.pixelsPassed = 0; + element.percentagePassed = 0; // meta calculations - module.cache.element.visible = (module.cache.element.topVisible || module.cache.element.bottomVisible); - module.cache.element.passing = (module.cache.element.topPassed && !module.cache.element.bottomPassed); - module.cache.element.hidden = (!module.cache.element.topVisible && !module.cache.element.bottomVisible); + element.visible = (element.topVisible || element.bottomVisible); + element.passing = (element.topPassed && !element.bottomPassed); + element.hidden = (!element.topVisible && !element.bottomVisible); // passing calculations - if(module.cache.element.passing) { - module.cache.element.pixelsPassed = (screen.top - element.top); - module.cache.element.percentagePassed = (screen.top - element.top) / element.height; + if(element.passing) { + element.pixelsPassed = (screen.top - element.top); + element.percentagePassed = (screen.top - element.top) / element.height; } - module.verbose('Updated element calculations', module.cache.element); + module.cache.element = element; + module.verbose('Updated element calculations', element); + return element; }, screenCalculations: function() { var @@ -741,11 +742,10 @@ $.fn.visibility = function(parameters) { return module.cache.element; }, elementCalculations: function() { - var element = module.cache.element; - if(element === undefined) { + if(module.cache.element === undefined) { module.save.elementCalculations(); } - return element; + return module.cache.element; }, screenCalculations: function() { if(module.cache.screen === undefined) {