//JS-Framework zum Maushandling
//Aktuelle Mauskoordinaten, relativ zum Dokumentenursprung stehen global zur verfügung
var MausX=0; //Globale Mauskoordinaten
var MausY=0;

//function getScrollPosX()   Scrollbreite
//function getScrollPosY()


var ie5=(document.getElementById&&document.all&&document.styleSheets)?1:0;
var nn6=(document.getElementById&&!document.all)?1:0;

//Ermitteln der Mauskoordinaten
if(typeof document.onmousemove == 'function'){ var OldOnmousemoveFuncKSFD=document.onmousemove;}
document.onmousemove=function(e)
{ //alert('Hi Mausmove in maus.js ');
  if( !e )//Kein Event
  { if( window.event ) { e = window.event; }//Internet Explorer
    else {return;}//total failure, we have no way of referencing the event
  }
  if( typeof( e.pageX ) == 'number' )
  { //most browsers
    MausX = e.pageX;
    MausY = e.pageY;
  }
  else if( typeof( e.clientX ) == 'number' )
  { //Internet Explorer and older browsers
    //other browsers provide this, but follow the pageX/Y branch
    MausX = e.clientX;
    MausY = e.clientY;
    var badOldBrowser = ( window.navigator.userAgent.indexOf( 'Opera' ) + 1 ) ||
                        ( window.ScriptEngine && ScriptEngine().indexOf( 'InScript' ) + 1 ) ||
                        ( navigator.vendor == 'KDE' );
    if( !badOldBrowser )
    { if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) )
      { //IE 4, 5 & 6 (in non-standards compliant mode)
        MausX += document.body.scrollLeft;
        MausY += document.body.scrollTop;
      }
      else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) )
      { //IE 6 (in standards compliant mode)
        MausX += document.documentElement.scrollLeft;
        MausY += document.documentElement.scrollTop;
      }
    }
  }
  else
  {return;}//total failure, we have no way of obtaining the mouse coordinates

  if(typeof OldOnmousemoveFuncKSFD == 'function'){ OldOnmousemoveFuncKSFD();}
}



function getScrollPosX()
{ if (document.documentElement.scrollLeft){return document.documentElement.scrollLeft;}
  else {return document.body.scrollLeft;}
}
function getScrollPosY()
{ if (document.documentElement.scrollTop){return document.documentElement.scrollTop;}
  else {return document.body.scrollTop;}
}


function getPosition(element)
/* der Aufruf dieser Funktion ermittelt die ABSOLUTEN BILDSCHIRMKOORDINATEN Koordinaten (Bildschirm!)
   des Objekts element */
{ var elem=element,tagname="",x=0,y=0;

  while ((typeof(elem)=="object")&&(typeof(elem.tagName)!="undefined"))
  {
    //alert(elem.tagName+ '- '+elem);
    y+=elem.offsetTop;
    x+=elem.offsetLeft;
    tagname=elem.tagName.toUpperCase();
    if ((tagname=="BODY")||(tagname=="HTML")) { elem=0;}
    if (typeof(elem)=="object")
    { if (typeof(elem.offsetParent)=="object"){ elem=elem.offsetParent;}
    }
  }
  if(ie5)
  { x=x-document.body.scrollLeft;
    y=y-document.body.scrollTop;
  }
  else if(nn6)
  {  x=x-window.pageXOffset;
     y=y-window.pageYOffset;
  }

  var position=new Object();
  position.x=x;
  position.y=y;
  return position;
}
function getPositionRelative(element)
/* der Aufruf dieser Funktion ermittelt die relativen Koordinaten zur linken oberen Ecke derWebsite
   des Objekts element */
{ var pos=getPosition(element);

  if(ie5) { }
  else if(nn6)
  {  pos.x=pos.x+getScrollPosX();
     pos.y=pos.y+getScrollPosY();
  }
  var position=new Object();
  position.x=pos.x;
  position.y=pos.y;
  return position;
}
