// Détourne les éventuelles erreurs
self.onError = null;

// Amortie
var smoothNess = 0.08;

// Détection navigateur
DOM = (document.getElementById) ? true : false;
NS = (document.layers) ? true : false;
IE = (document.all) ? true : false;
NS6 = DOM && !NS && !IE;

// Dernière position Y du layer
lastScrollY = 0;

valSUP = false;
valINF = true;

// La gestion du layer
function heartBeat() {
        if(IE) { diffY = document.body.scrollTop; }
        if(NS || NS6) { diffY = self.pageYOffset; }

	if(valSUP && diffY<90) { valINF = true; valSUP = false; }
	if(valINF && diffY>90) { valSUP = true; valINF = false; }
	if(valSUP) { diffY = diffY-130; }

        if(diffY != lastScrollY) {
                percent = smoothNess * (diffY - lastScrollY);
                if(percent > 0) percent = Math.ceil(percent);
                else percent = Math.floor(percent);
                if(IE) document.all.floatmenu.style.pixelTop += percent;
                if(NS) document.floatmenu.top += percent;
		if(NS6) document.getElementById("floatmenu").style.top = parseInt(document.getElementById("floatmenu").style.top) + percent;
                lastScrollY += percent;
        }
}

// Exécute la fonction toute les millisecondes
if(NS || NS6 || IE) {timeoutID = window.setInterval("heartBeat()",1)}