// JavaScript Document
//NECESSITE function addLoadEvent()
function navigByK(){
// tester sur ie7, ie8, firefox 3, safari 3.2, chrome 2, opera 9.6
	//  --  INIT  --  //
	this.version = "0.0c";
	this.navigateur = navigator.userAgent;
	this.xmouse = 0;
	this.ymouse = 0;
	//  ------------  //
	//  -- DIVERS --  //
	this.getBody = function(){
		sUserAgent = this.navigateur;
		if( (sUserAgent.indexOf("Safari") != -1)  ){//BUG SAFARI
			var oBody = document.getElementsByTagName('body')[0];
		}else{
			var oBody = document.documentElement;
		}
		return oBody;
	}
	
	//  ------------  //
	//  --  BODY  --  //
	this.page_width = function(){
		oBody = this.getBody();
		var nLargeurNavigateur=oBody.scrollWidth;
		if(parseInt(nLargeurNavigateur)<parseInt(oBody.offsetWidth)){
			nLargeurNavigateur=parseInt(oBody.offsetWidth);
		}
		//BUG IE8
		sUserAgent = this.navigateur;
		if(sUserAgent.indexOf("MSIE 8") != -1 ){nLargeurNavigateur=oBody.scrollWidth;}
		return nLargeurNavigateur;
	}
	
	this.page_height = function(){
		oBody = this.getBody();
		var nHauteurNavigateur=oBody.scrollHeight;
		if(parseInt(nHauteurNavigateur)<parseInt(oBody.offsetHeight)){
			nHauteurNavigateur=parseInt(oBody.offsetHeight);
		}
		//BUG IE8
		sUserAgent = this.navigateur;
		if(sUserAgent.indexOf("MSIE 8") != -1 ){nHauteurNavigateur=oBody.scrollHeight;}
		if(sUserAgent.indexOf("Opera") != -1) {
			if(nHauteurNavigateur<screen.availHeight){
				nHauteurNavigateur=screen.availHeight;
			};
		}
		return nHauteurNavigateur;
	}
	
	//  -------------  //
	//  --  ECRAN  --  //
	this.ecran_width  = function(){return document.documentElement.clientWidth;}
	
	this.ecran_height = function(){return document.documentElement.clientHeight;}
	
	this.scrollX = function(){
		sUserAgent = this.navigateur;
		if(sUserAgent.indexOf("Safari") != -1 ){
			var nScrollX = window.pageXOffset;
		}else{
			var nScrollX = document.documentElement.scrollLeft;
		}
		return nScrollX;
	}
	
	this.scrollY = function(){
		sUserAgent = this.navigateur;
		if(sUserAgent.indexOf("Safari") != -1 ){
			var nScrollY = window.pageYOffset;
		}else{
			var nScrollY = document.documentElement.scrollTop;
		}
		return nScrollY;
	}
	
	//  --------------  //
	//  --  SOURIS  --  //
	this.addMouseMove = function(func){
		if(typeof func == 'function'){
			document.onmousemove=func;
		}
	}
	
	//A TITRE D'EXEMPLE
	this.mouseXY = function(e){
	
		var DocRef;    // Variable pour IE uniquement

 		 // L'événement est passée à la fonction
 		  // donc tous sauf IE…
  		  if( e){                     // Dans ce cas on obtient directement la position dans la page
    	  	 Mouse_X = e.pageX;
    	  	Mouse_Y = e.pageY;
  		  }
  		  else{                      // Dans ce cas on obtient la position relative à la fenêtre d'affichage
    	  	Mouse_X = event.clientX;
    	  	Mouse_Y = event.clientY;

    	  	//-- Il faut traiter le CAS des DOCTYPE sous IE
    	   if( document.documentElement && document.documentElement.clientWidth) // Donc DOCTYPE
    	    	  DocRef = document.documentElement;   // Dans ce cas c'est documentElement qui est réfèrence
    	  		  else
      			  DocRef = document.body;                    // Dans ce cas c'est body qui est réfèrence

    	  //-- On rajoute la position liée aux ScrollBars
    	  Mouse_X += DocRef.scrollLeft;
    	  Mouse_Y += DocRef.scrollTop;
  		}
		G_oMouseX =Mouse_X;
		G_oMouseY =Mouse_Y;
		
		//document.getElementById('recup').innerHTML = "X:"+mouseX;
	}
	
	//A TITRE D'EXEMPLE
	this.mouseX = function(evt){
		sUserAgent = this.navigateur;
		if(sUserAgent.indexOf("MSIE") != -1 ){
			var mouseX = event.x ;
		}else if(sUserAgent.indexOf("Firefox") != -1 ){
			var mouseX = evt.pageX;
		}else{
			var mouseX = window.event.pageX;
		}
		this.xmouse =mouseX;
		//document.getElementById('recup').innerHTML = "X:"+mouseX;
	}
	//A TITRE D'EXEMPLE
	this.mouseY = function(evt){
		sUserAgent = this.navigateur;
		if(sUserAgent.indexOf("MSIE") != -1 ){
			var mouseY = window.event.y ;
		}else if(sUserAgent.indexOf("Firefox") != -1 ){
			var mouseY = evt.pageY;
		}else{
			var mouseY = window.event.pageY;
		}
		this.ymouse =mouseY;  
		//document.getElementById('recup').innerHTML = "Y:"+mouseY;
	}

}
var G_oNav;
var G_oMouseX,G_oMouseY;
function LoadNavigByK(){
	G_oNav = new navigByK();
	document.onmousemove= G_oNav.mouseXY;
}
addLoadEvent(LoadNavigByK);
/*
  --  MEMO  --  
var sUserAgent = navigator.userAgent;
if(sUserAgent.indexOf("MSIE 8") != -1) 		IE8
if(sUserAgent.indexOf("MSIE 7") != -1) 		IE7
if(sUserAgent.indexOf("MSIE 6") != -1) 		IE6

if(sUserAgent.indexOf("Firefox/3") != -1) 	FIREFOX3
if(sUserAgent.indexOf("Firefox/2") != -1) 	FIREFOX2
if(sUserAgent.indexOf("Firefox") != -1) 	FIREFOX

if(sUserAgent.indexOf("Safari") != -1) 		SAFARI
if(sUserAgent.indexOf("Chrome") != -1) 		CHROME !! safari present aussi

if(sUserAgent.indexOf("Opera/10") != -1) 	OPERA10
if(sUserAgent.indexOf("Opera/9") != -1) 	OPERA9
if(sUserAgent.indexOf("Opera") != -1) 		OPERA

if(sUserAgent.indexOf("Netscape/7") != -1) 	NETSCAPE7
if(sUserAgent.indexOf("Netscape") != -1) 	NETSCAPE

*/
