Помогите зафиксировать всплывающую подсказку
Вот пример всплывающей подсказки Но при наведении она появляется в разных местах, а не строго над кружочком. Как "зафиксировать" её?
Вот сам код: function showToolTip(e,text){ if(document.all)e = event; var obj = document.getElementById('bubble_tooltip'); var obj2 = document.getElementById('bubble_tooltip_content'); obj2.innerHTML = text; obj.style.display = 'block'; var st = Math.max(document.body.scrollTop,document.documentElement.scrollTop); if(navigator.userAgent.toLowerCase().indexOf('safari')>=0)st=0; var leftPos = e.clientX - 100; if(leftPos<0)leftPos = 0; obj.style.left = leftPos + 'px'; obj.style.top = e.clientY - obj.offsetHeight -1 + st + 'px'; } function hideToolTip() { document.getElementById('bubble_tooltip').style.display = 'none'; } |
function showToolTip(e,text){ e = e || event; var target = e.target || e.srcElement; var obj = document.getElementById('bubble_tooltip'); var obj2 = document.getElementById('bubble_tooltip_content'); obj2.innerHTML = text; obj.style.display = 'block'; var st = Math.max(document.body.scrollTop,document.documentElement.scrollTop); if(navigator.userAgent.toLowerCase().indexOf('safari')>=0)st=0; var leftPos = e.clientX - 100; if(leftPos<0)leftPos = 0; obj.style.left = ( target.offsetLeft - obj.offsetWidth + 58 ) + "px"; obj.style.top = ( target.offsetTop - obj.offsetHeight + 10 ) + "px"; // obj.style.left = leftPos + 'px'; // obj.style.top = e.clientY - obj.offsetHeight -1 + st + 'px'; }но при этом родительский элемент у SPAN должен иметь значение у position либо relative либо absolute. Для других случаев придется offsetTop и offsetLeft пересчитывать. |
Спасибо, теперь появляется ровно над знаком, но теперь другая проблема :( Подсказка должна появляться при наведении, а при отдалении исчезать. А она появляется при открытии страницы, а не при наведении и не исчезает
Добавлено. А блин function hideToolTip() { document.getElementById('bubble_tooltip').style.display = 'none'; } Потерял)))) devote, спасибо за помощь! |
Часовой пояс GMT +3, время: 22:38. |