onmousemove не отлавливается
есть скрипт:
<script type="text/javascript"> function moveTip(e) { //alert('a'); if(!e) e=window.event; //else /*else { var an = navigator.appName; var av = navigator.appVersion; var acn = navigator.appCodeName; var ua = navigator.userAgent; alert(an+av+acn+ua); }*/ //alert(e.target); floatTipStyle = document.getElementById("floatTip").style; w = 250; // Ширина слоя // Для браузера IE var IE='\v'=='v'; if (document.all) { x = event.x + document.body.scrollLeft; y = event.y + document.body.scrollTop; // Для остальных браузеров } else { x = e.pageX; y = e.pageY; } if ((x + w + 10) < document.body.clientWidth) { floatTipStyle.left = x + 'px'; } else { floatTipStyle.left = x - w + 'px'; } floatTipStyle.top = y + 20 + 'px'; } function toolTip(msg) { alert('a'); floatTipStyle = document.getElementById("floatTip").style; if (msg) { document.getElementById("floatTip").innerHTML = msg; floatTipStyle.display = "block"; } else { floatTipStyle.display = "none"; } } </script> вот использование: <img src="images/odel.jpg" alt="Фотография" width="300" height="450" onmouseover="toolTip('текст')" onmouseout="toolTip()" onmousemove = "moveTip(e) " /> <div id="floatTip"></div> и идентификатор: #floatTip { position: absolute; width: 250px; display: none; border: 1px solid #000; padding: 5px; font-family: sans-serif; font-size: 9pt; color: #931; background: red; opacity: 0.85; left:0; } Задача: должно реализовываться движение за курсором мыши (при навидении на картинку) блока div, описанного #floatTip тут. Как только курсор вышел за границу, блок около курсора должен исчезнуть. Скрипт в принципе рабочий, проверял просто когда в документе 1 div. Но в моей ситаации наблюдается большая вложенность дивов (контент и тд). Вот почему то при этой вложенности onmouseover, onmouseout отлавилаются, но выводится див блок только под изображение, а мне надо чтоб за курсором выводился блок без остановки, а mousemove не ловится. Подскажите че делать? заранее спасибо. |
haxoid,
Попробуйте добавить z-index #floatTip { position: absolute; width: 250px; display: none; border: 1px solid #000; padding: 5px; font-family: sans-serif; font-size: 9pt; color: #931; background: red; opacity: 0.85; z-index:2000; left:0; } |
И второе - Нет такого объекта document.getElementById("floatTip").style
В Переменную вдалбливаете floatTipStyle = document.getElementById("floatTip") А для задания свойств floatTipStyle.style.left = ... floatTipStyle.style.top = ... |
к сожалению никаких изменений. Есть еще варианты?
|
Цитата:
|
повесил на боди - ноль реакции. Из за чего такое может быть?
|
Цитата:
Напишите в стилях body {height:100%} для ие надо e.x а не event.x в таких случаях всегда проблема что курсор то на картинке будет то на див попадет-поэтому див надо ниже курсора пикселов на 20 |
Цитата:
Сущий бред |
остальные события работают в том то и дело! даже для того же дива, события onmouseover, onmouseout работают даже из боди. Движение курсора просто не отлавливается. Алерты не выводятся. Магия.
|
Цитата:
function moveTip(e) {alert(0)} <body onmousemove=moveTip(event)> |
Часовой пояс GMT +3, время: 08:01. |