﻿var dofade=true;     // ENABLES FADE-IN EFFECT FOR IE4+ AND NS6 ONLY

var center=false;     // CENTERS THE BOX UNER THE MOUSE, OTHERWISE DISPLAYS BOX TO THE RIGHT OF THE MOUSE

var centertext=false; // CENTERS THE TEXT INSIDE THE BOX. YOU CAN'T SIMPLY DO THIS VIA STYLE BECAUSE OF NS4.

                     // OTHERWISE, TEXT IS LEFT-JUSTIFIED. 

function ietruebody(){

return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body

}

 

var NS4 = (navigator.appName.indexOf("Netscape")>=0 && !document.getElementById)? true : false;

var IE4 = (document.all && !document.getElementById)? true : false;

var IE5 = (document.getElementById && document.all)? true : false;

var NS6 = (document.getElementById && navigator.appName.indexOf("Netscape")>=0 )? true: false;

var W3C = (document.getElementById)? true : false;

var w_y, w_x, alttxt, boxheight, boxwidth;

var ishover=false;

var isloaded=false;

var ieop=0;

var op_id=0;

 

function getwindowdims(){

w_y=(NS4||NS6||window.opera)? window.innerHeight : (IE5||IE4)? document.body.clientHeight : 0;

w_x=(NS4||NS6||window.opera)? window.innerWidth : (IE5||IE4)? document.body.clientWidth : 0;

}

 

function getboxwidth(){

if(NS4)boxwidth=(alttxt.document.width)? alttxt.document.width : alttxt.clip.width;

if(IE5||IE4)boxwidth=(alttxt.style.pixelWidth)? alttxt.style.pixelWidth : alttxt.offsetWidth;

if(NS6)boxwidth=(alttxt.style.width)? parseInt(alttxt.style.width) : parseInt(alttxt.offsetWidth);

}

 

function getboxheight(){

if(NS4)boxheight=(alttxt.document.height)? alttxt.document.height : alttxt.clip.height;

if(IE4||IE5)boxheight=(alttxt.style.pixelHeight)? alttxt.style.pixelHeight : alttxt.offsetHeight;

if(NS6)boxheight=parseInt(alttxt.offsetHeight);

 

}

 

function movealttxt(x,y){

if(NS4)alttxt.moveTo(x,y);

if(W3C||IE4){

alttxt.style.left=x+'px';

alttxt.style.top=y+'px';

}}

 

function getpagescrolly(){

if(NS4||NS6)return window.pageYOffset;

if(IE5||IE4)return ietruebody().scrollTop;

}

 

function getpagescrollx(){

if(NS4||NS6)return window.pageXOffset;

if(IE5||IE4)return ietruebody().scrollLeft;

}

 

function writeindiv(text){

if(NS4){

alttxt.document.open();

alttxt.document.write(text);

alttxt.document.close();

}

if(W3C||IE4)alttxt.innerHTML=text;

}

 

//**** END UTILITY FUNCTIONS ****//

 

function writetxt(text){

if(isloaded){

if(text!=0){

ishover=true;

if(NS4)text='<div class="alttext">'+((centertext)?'<center>':'')+text+((centertext)?'</center>':'')+'</div>';

writeindiv(text);

getboxheight();

if((W3C || IE4) && dofade){

ieop=0;

incropacity();

}}else{

if(NS4)alttxt.visibility="hide";

if(IE4||W3C){

if(dofade)clearTimeout(op_id);

alttxt.style.visibility="hidden";

}

writeindiv('');

ishover=false;

}}}

 

function incropacity(){

if(ieop<=100){

ieop+=100;

if(IE4 || IE5)alttxt.style.filter="alpha(opacity="+ieop+")";

if(NS6)alttxt.style.MozOpacity=ieop/100;

op_id=setTimeout('incropacity()', 50);

}}

 

function moveobj(evt){

if(isloaded && ishover){

margin=(IE4||IE5)? 1 : 23;

if(NS6)if(document.height+27-window.innerHeight<0)margin=15;

if(NS4)if(document.height-window.innerHeight<0)margin=10;

//mx=(NS4||NS6)? evt.pageX : (IE5||IE4)? event.clientX : 0;

//my=(NS4||NS6)? evt.pageY : (IE5||IE4)? event.clientY : 0;

if (NS4){

mx=evt.pageX

my=evt.pageY

}

else if (NS6){

mx=evt.clientX

my=evt.clientY

}

else if (IE5){

mx=event.clientX

my=event.clientY

}

else if (IE4){

mx=0

my=0

}

 

if(NS4){

mx-=getpagescrollx();

my-=getpagescrolly();

}

xoff=(center)? mx-boxwidth/2 : mx+5;

yoff=(my+boxheight+30-getpagescrolly()+margin>=w_y)? -15-boxheight: 30;

movealttxt( Math.min(w_x-boxwidth-margin , Math.max(2,xoff))+getpagescrollx() , my+yoff+getpagescrolly());

if(NS4)alttxt.visibility="show";

if(W3C||IE4)alttxt.style.visibility="visible";

}}

 

if(NS4)document.captureEvents(Event.MOUSEMOVE);

document.onmousemove=moveobj;

window.onload=function(){

  alttxt=(NS4)? document.layers['alttxt'] : (IE4)? document.all['alttxt'] : (W3C)? document.getElementById('alttxt') : null;

  getboxwidth();

  getboxheight();

  getwindowdims();

  isloaded=true;

  if((W3C || IE4) && centertext)alttxt.style.textAlign="center";

  if(W3C)alttxt.style.padding='4px';

  if(IE4 || IE5 && dofade)alttxt.style.filter="alpha(opacity=0)";

  }

window.onresize=getwindowdims;

 

