var myprompt=document.createElement('div');
myprompt.id='prompt';
myprompt.style.display='none';
myprompt.style.position='absolute';
myprompt.style.top='0px';
myprompt.style.left='0px';
myprompt.show_delay=100; //задержка перед появлением подсказки в милисекундах
myprompt.hide_delay=100; //задержка перед исчезанием подсказки в милисекундах
myprompt.cursor_shiftX=-220; //сдвиг относительно курсора по Х
myprompt.cursor_shiftY=-115; //сдвиг относительно курсора по Y
myprompt.prompt_elements=new Array('a','h1'); //дополните массив с HTML элементами по своему усмотрению

function mousePageXY(e)
{ var x = 0, y = 0;
var coord=new Array();
  if (!e) e = window.event;
  if (e.pageX || e.pageY)
  { x = e.pageX;
    y = e.pageY;
  }
  else if (e.clientX || e.clientY)
  { x = e.clientX + (document.documentElement.scrollLeft ||
document.body.scrollLeft) - document.documentElement.clientLeft;
    y = e.clientY + (document.documentElement.scrollTop ||
document.body.scrollTop) - document.documentElement.clientTop;
  }
  coord[0]=x;coord[1]=y;
  return coord;
}

function getBodyScrollTop(){
  return self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop);
}

function getBodyScrollLeft(){
  return self.pageXOffset || (document.documentElement && document.documentElement.scrollLeft) || (document.body && document.body.scrollLeft);
}

function showPrompt(event){
	if(!event) event=window.event;
	if(myprompt.mustShow==undefined){
		if(myprompt.timer_id){
			window.clearInterval(myprompt.timer_id);
			myprompt.mustHide=undefined;
		}
		myprompt.next_message=this.prompt_text;
		myprompt.mustShow=true;
		coord = mousePageXY(event);
		myprompt.oldX=coord[0];
		myprompt.oldY=coord[1];
		myprompt.timer_id=window.setInterval('showPrompt();',myprompt.show_delay);
	}else{
		window.clearInterval(myprompt.timer_id);
		myprompt.innerHTML=myprompt.next_message;
		myprompt.timer_id=undefined;
		myprompt.mustShow=undefined;
		myprompt.style.left=(coord[0]+myprompt.cursor_shiftX)+'px';
		myprompt.style.top=(coord[1]+myprompt.cursor_shiftY)+'px';
		myprompt.style.display='block';
	}
}
function hidePrompt(){
	if(myprompt.mustHide==undefined){
		if(myprompt.timer_id){
			window.clearInterval(myprompt.timer_id);
			myprompt.mustShow=undefined;
		}
		myprompt.mustHide=true;
		myprompt.timer_id=window.setInterval('hidePrompt();',myprompt.hide_delay);
	}else{
		window.clearInterval(myprompt.timer_id);
		myprompt.timer_id=undefined;
		myprompt.mustHide=undefined;
		myprompt.style.display='none';
	}
}
function refreshPromptCoords(event){
	if(myprompt.mustShow==undefined) return;
	if(!event) event=window.event;
	myprompt.oldX=event.clientX+document.body.scrollLeft;
	myprompt.oldY=event.clientY+document.body.scrollTop;
}
function setPromptEvents(){
	document.body.appendChild(myprompt);
	for(var k=0; k<myprompt.prompt_elements.length; k++){
		var anchors=document.getElementsByTagName(myprompt.prompt_elements[k]);
		for(var i=0; i<anchors.length; i++){
			var spans=anchors[i].getElementsByTagName('span');
			if(spans.length==0) continue;
			for(var j=0; j<spans.length; j++){
				if(spans[j].className=='prompt'){
					anchors[i].prompt_text=spans[j].innerHTML;
					break;
				}
			}
			if(!anchors[i].prompt_text) continue;
			anchors[i].onmouseover=showPrompt;
			anchors[i].onmouseout=hidePrompt;
			anchors[i].onmousemove=refreshPromptCoords;
		}
	}
}
if (typeof document.attachEvent!='undefined') window.attachEvent('onload',setPromptEvents);
else window.addEventListener('load',setPromptEvents,false);
