/**
StickyBlock
**/

$(document).ready(function(){

	$('.stickyElement').each(function(){
		var defaultTop = $(this).offset().top;
		var defaultBottom = $('#footer').position().top + $('#footer').height();
		var currentElement = $(this);
		var currentElementHeight = defaultTop+currentElement.height();
		var posCurrentElementBottom = defaultBottom-currentElementHeight+defaultTop;
		currentElement.css('position','relative');
		
		$(window).scroll(function(){
			if(scrollY()>defaultTop && scrollY()<posCurrentElementBottom){
				//element descend en fonction du scrolling et de la position du parent 
				currentElement.stop().animate({top:20+scrollY()-defaultTop},0);
			} else if(scrollY()>=posCurrentElementBottom) {
				//element bloque au niveau du footer
				currentElement.stop().animate({bottom:defaultBottom-currentElementHeight},0);
			} else {
				//element reprend sa position de départ
				currentElement.stop().animate({top:0},0);
			}
		});
		//permet de gérer la position lors d'un rechargement
		if(scrollY()>defaultTop){
			currentElement.stop().animate({top:scrollY()-defaultTop},0);
		}
	});
});



function scrollY() {
	scrOfY = 0;
	if(typeof(window.pageYOffset) == 'number') {
		//Netscape compliant
		scrOfY = window.pageYOffset;
	} else if (document.body && (document.body.scrollTop)) {
		//DOM compliant
		scrOfY = document.body.scrollTop;
	} else if(document.documentElement && (document.documentElement.scrollTop)) {
		//IE6 standards compliant mode
		scrOfY = document.documentElement.scrollTop;
	}
	return scrOfY;
}
