(function($){  

$.fn.positionFooter = function(center){  
  
var element = this; 

var originalPosition = $(element).offset();
var originalTopPosition = originalPosition.top;  

positionTheFooter();  
  
$(window).bind("resize", function(){  
    positionTheFooter();  
});
 
function positionTheFooter(){ 
  
  var elementPosition = $(element).offset();
  var elementPaddingTop = $(element).css("padding-top");
  var elementPaddingBottom = $(element).css("padding-bottom");
  var elementPaddingleft = $(element).css("padding-left");
  var elementPaddingRight = $(element).css("padding-right");
  var elementHeight = $(element).height();
  var elementWidth = $(element).width();
  
  var windowHeight = $(window).height();
  var windowWidth = $(window).width();
  
  elementPaddingTop = elementPaddingTop.replace(/px/,"");
  elementPaddingBottom = elementPaddingBottom.replace(/px/,"");
  elementPaddingleft = elementPaddingleft.replace(/px/,"");
  elementPaddingRight = elementPaddingRight.replace(/px/,"");
  
  var newPosition = (parseInt(windowHeight) - (parseInt(elementHeight) + (parseInt(elementPaddingTop) + parseInt(elementPaddingBottom))));
  var currentPosition = elementPosition.top - (parseInt(elementHeight) + (parseInt(elementPaddingTop) + parseInt(elementPaddingBottom)));
    
  if(originalTopPosition < windowHeight){
    
    $(element).css({  
      "position" : "absolute",
      "top" : newPosition
    });
    
    if(center == true){
      $(element).css({  
        "left" : windowWidth / 2 - (((elementWidth + parseInt(elementPaddingleft) + parseInt(elementPaddingRight)) / 2))
      });
    }
  
  }
  
  if(newPosition <= originalTopPosition){

    $(element).css({  
      "position" : "absolute",
      "top" : originalTopPosition
    });
    
    if(center == true){
      $(element).css({  
        "left" : windowWidth / 2 - (((elementWidth + parseInt(elementPaddingleft) + parseInt(elementPaddingRight)) / 2))
      });
    }
  
  }
  
};
  
};  
  
})(jQuery); 

$(function() {
    $("#footer").positionFooter(false);
});