Почитал, сделал, но косяки полюбому остались еще)
Хотелось бы узнать как много и какие)
$(document).ready(function(){
initGTitle("#gtitle");//Инициализация
});
function initGTitle(idtitle){// idtitle - id, уже созданного и оформленного в css, блока для всплывающих подсказок.
document.onmouseover = function(e) {
var event = e || window.event;
var target = event.target || event.srcElement;
var title = target.getAttribute('title');
if (!title) return;
moveTitleIntoBox(target, idtitle);//перемещение текста из title в блок для всплыв. подсказки
viewGTitle(idtitle, event.clientX,event.clientY);
target.gactive = true;//запоминаем элемент, что бы при mouseout выполнялись функции исчезновения только для него.
return false;
};
document.onmouseout = function(e) {
var event = e || window.event;
var target = event.target || event.srcElement;
if(!target.gactive) return;//Элемент не активен? выход : продолжаем
moveBoxIntoTitle(target, idtitle)
hideGTitle(idtitle);
target.gactive = false;
return false;
};
}
function viewGTitle(idtitle, x, y){
$(idtitle).css({
"position":"absolute",
"top":y-4-$(idtitle).height()-parseInt($(idtitle).css("padding-top"))-parseInt($(idtitle).css("padding-bottom")),
"left":x+4
});
$(idtitle).stop();
$(idtitle).css("display", "block")
$(idtitle).animate({
opacity:1
}, 400);
}
function hideGTitle(idtitle){
$(idtitle).stop();
$(idtitle).animate({
opacity:0
}, 400, function(){$(idtitle).css("display", "none");});
}
function moveTitleIntoBox(t, idtitle){
var gtitletext = t.getAttribute('title');
$(idtitle).empty();
$(idtitle).append(gtitletext);
t.removeAttribute('title');
}
function moveBoxIntoTitle(t, idtitle){
t.setAttribute('title', $(idtitle).html());
}