
function verScroll(dir, spd, loop) {
loop = true;
direction = "up";
speed = 10;
scrolltimer = null;

	if (document.layers) {
		var page = eval(document.elementTexte);
	}else{
		if (document.getElementById) {
			var page= eval("document.getElementById('elementTexte')");
		}else{
			if (document.all) {
				var page = eval(document.all.elementTexte);
			}
		}
	}

	direction = dir;
	speed = parseInt(spd);
	
	var y_pos = parseInt(page.scrollTop);
	
	if(direction == "up"){
		page.scrollTop = y_pos-speed;
	}
	
	if(direction == "dn"){ 
		page.scrollTop = y_pos+speed;
	}

	scrolltimer = setTimeout("verScroll(direction,speed)", 1);
	
}

function verScrollMouse(dir, v) {

direction = "up";

	if (document.layers) {
		var page = eval(document.elementTexte);
	}else{
		if (document.getElementById) {
			var page= eval("document.getElementById('elementTexte')");
		}else{
			if (document.all) {
				var page = eval(document.all.elementTexte);
			}
		}
	}

	if(page){
	
		direction = dir;
		
		var y_pos = parseInt(page.scrollTop);
		
		if(direction == "up"){
			page.scrollTop = y_pos-v;
		}
		
		if(direction == "dn"){ 
			page.scrollTop = y_pos+v;
		}
		
	}
	
}




function stopScroll() {
loop = false;
clearTimeout(scrolltimer);
}




function divScrollBarPosition(){

	if (document.layers) {
		var page = eval(document.elementTexte);
		var fTexte = eval(document.finTexte);
		var divScrollBarre = eval(document.divScrollBar);
	}else{
		if (document.getElementById) {
			var page = eval("document.getElementById('elementTexte')");
			var fTexte = eval("document.getElementById('finTexte')");
			var divScrollBarre = eval("document.getElementById('divScrollBar')");
		}else{
			if (document.all) {
				var page = eval(document.all.elementTexte);
				var fTexte = eval(document.all.finTexte);
				var divScrollBarre = eval(document.all.divScrollBar);
			}
		}
	}


posPage = getTop(page);
hauteurPage = page.style.height;

valeurPage = parseInt(posPage)+parseInt(hauteurPage);

if(getTop(fTexte)){
	posTexte = getTop(fTexte);
}else{
	posTexte = 10000;
}



	if(posTexte > valeurPage){
		
		divScrollBarre.style.visibility = 'visible';
		
	}
	
}

function getLeft(ele)
{
	if (ele.offsetParent)
		return ele.offsetLeft + getLeft(ele.offsetParent);
	else
		return ele.offsetLeft;
}

function getTop(MyObject)

    {
	if(MyObject){
		if (MyObject.offsetParent)
			return (MyObject.offsetTop + getTop(MyObject.offsetParent));
		else
			return (MyObject.offsetTop);
		}
	}

//onload divScrolBar

if (window.addEventListener)
{
// Mozilla/W3C
window.addEventListener('load', divScrollBarPosition, false);
window.addEventListener('resize', divScrollBarPosition, false);
}
else if (window.attachEvent)
{
// IE
window.attachEvent('onload', divScrollBarPosition);
window.attachEvent('onresize', divScrollBarPosition);
}


/** This is high-level function.
 * It must react to delta being more/less than zero.
 */
function handle(delta) {
	if (delta < 0){
	verScrollMouse('dn',40);
	}else{
	verScrollMouse('up',40);
	}
}

/** Event handler for mouse wheel event.
 */
function wheel(event){

	if (document.layers) {
		var page = eval(document.elementTexte);
	}else{
		if (document.getElementById) {
			var page= eval("document.getElementById('elementTexte')");
		}else{
			if (document.all) {
				var page = eval(document.all.elementTexte);
			}
		}
	}


	
	
	var distX = getMouseX();
	var distY = getMouseY();
	if(distX>=getLeft(page) && distY>=getTop(page)){
	
        var delta = 0;
        if (!event) /* For IE. */
                event = window.event;
        if (event.wheelDelta) { /* IE/Opera. */
                delta = event.wheelDelta/120;
                /** In Opera 9, delta differs in sign as compared to IE.
                 */
                if (window.opera)
                        delta = -delta;
        } else if (event.detail) { /** Mozilla case. */
                /** In Mozilla, sign of delta is different than in IE.
                 * Also, delta is multiple of 3.
                 */
                delta = -event.detail/3;
        }
        /** If delta is nonzero, handle it.
         * Basically, delta is now positive if wheel was scrolled up,
         * and negative, if wheel was scrolled down.
         */
        if (delta)
                handle(delta);
        /** Prevent default actions caused by mouse wheel.
         * That might be ugly, but we handle scrolls somehow
         * anyway, so don't bother here..
         */
		//alert(event.srcElement.id);
        if (event.preventDefault)
                event.preventDefault();
	event.returnValue = false;
	
	}
	
}

/** Initialization code. 
 * If you use your own event management code, change it as required.
 */
 /*
document.getElementById('parent').onmouseover = function(e){ 
	e = e|| window.event; 
	if(e.target.id=='div1'){ 
	  //handle mouseover for first div; 
	  
	}
}; 
*/
 
if (window.addEventListener)
        /** DOMMouseScroll is for mozilla. */
        window.addEventListener('DOMMouseScroll', wheel, false);
/** IE/Opera. */
window.onmousewheel = document.onmousewheel = wheel;



// Detect if the browser is IE or not.
// If it is not IE, we assume that the browser is NS.
var IE = document.all?true:false;

// If NS -- that is, !IE -- then set up for mouse capture
if (!IE) document.captureEvents(Event.MOUSEMOVE);

// Set-up to use getMouseXY function onMouseMove
document.onmousemove = getMouseX;
document.onmousemove = getMouseY;
// Temporary variables to hold mouse x-y pos.s
var tempX = 0;
var tempY = 0;

// Main function to retrieve mouse x-y pos.s

function getMouseX(e) {
  if (IE) { // grab the x-y pos.s if browser is IE
  
 	if(document.documentElement){
		tempX = event.clientX + document.documentElement.scrollLeft;
	}else{
		tempX = event.clientX + document.body.scrollLeft;
	}
  
  } else {  // grab the x-y pos.s if browser is NS
    tempX = e.pageX;
  }  
  // catch possible negative values in NS4
  if (tempX < 0){tempX = 0;}
  // show the position values in the form named Show
  // in the text fields named MouseX and MouseY
  return tempX;
}

function getMouseY(e) {
  if (IE) { // grab the x-y pos.s if browser is IE
 	if(document.documentElement){
		tempY = event.clientY + document.documentElement.scrollTop;
	}else{
		tempY = event.clientY + document.body.scrollTop;
	}
  } else {  // grab the x-y pos.s if browser is NS
    tempY = e.pageY;
  }  
  // catch possible negative values in NS4
  if (tempY < 0){tempY = 0;}  
  // show the position values in the form named Show
  // in the text fields named MouseX and MouseY
  return tempY;
}

