function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
	//Netscape compliant
	scrOfY = window.pageYOffset;
	scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
	//DOM compliant
	scrOfY = document.body.scrollTop;
	scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
	//IE6 standards compliant mode
	scrOfY = document.documentElement.scrollTop;
	scrOfX = document.documentElement.scrollLeft;
  }
  return [ scrOfX, scrOfY ];
}

function findPos(obj) {
 var curleft = curtop = 0;
   if (obj.offsetParent) {
		do {
				curleft += obj.offsetLeft;
				curtop += obj.offsetTop;
		} while (obj = obj.offsetParent);
		return [curleft,curtop];
}}				


function showhidedefinition(id, e) {

	// ------------------
	// Get Object Element
	// ------------------

	if ( document.getElementById ) {
		obj = document.getElementById(id);
	} else if ( document.all ) {
		obj = document.all.item(id);
	} else {
		obj = null;
	}

	var pos = findPos( obj );

	// ---------------------------------
	// Move Definition to Mouse location
	// ---------------------------------
		var tempX = 0;
		var tempY = 0;
		var offset = 5;

		if (obj==null) return;

		if (document.all) {
			tempX = event.clientX + document.documentElement.scrollLeft;
			tempY = event.clientY + document.body.scrollTop;
		} else {
			tempX = e.pageX;
			tempY = e.pageY;
		}

									var posx = 0;
									var posy = 0;
									if (!e) var e = window.event;
									if (e.pageX || e.pageY) {
											posx = e.pageX;
											posy = e.pageY;
									}
									else if (e.clientX || e.clientY) {
											posx = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
											posy = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
									}
		

		if (tempX < 0){tempX = 0}
		if (tempY < 0){tempY = 0}

		var w = (window.innerWidth ? window.innerWidth : document.body.clientWidth);
		if (tempX > w - 300) {
			tempX = tempX - 300;
		}
		obj.style.width = w-(tempX+40);
		obj.style.top  = (posy+offset) + 'px'; //pos[1]; //(tempY + offset) + 'px';
		obj.style.left = (tempX + offset) + 'px';


	// -----------------------
	// Show or Hide Definition
	// -----------------------

		if (obj.style.visibility == 'hidden') {
			obj.style.visibility = 'visible';
		} else {
			obj.style.visibility = 'hidden';
		}

}	
