проблема с мерцанием текста при перемещении мыши? - PullRequest
1 голос
/ 11 ноября 2010

У меня есть HTML-фрагмент, который изначально скрыт

<p style="float: left; position: relative; left: 130px; top: 80px; display: none;" id="homehref">    
    <a href="" style="color: white;">Home Page</a>
</p>

я показываю это с помощью jQuery.show (); при наведении курсора и снова скрыть его при наведении мыши с помощью jQuery.hide (); Хотя при наведении мыши на элемент я вижу мерцание текста, у кого-то раньше возникала такая же проблема.

Ответы [ 2 ]

3 голосов
/ 11 ноября 2010

Дополнительные события mouseover и mouseout запускаются на вашем внешнем элементе из-за всплывающего события .

Вы должны привязаться к mouseenter и mouseleave вместо mouseover / mouseout, чтобы предотвратить это:

Событие mouseleave отличается от mouseout тем, как оно обрабатывает всплывающее событие.Если бы в этом примере использовалось mouseout, то, когда указатель мыши переместился из элемента Inner , обработчик сработал бы.Это обычно нежелательное поведение.Событие mouseleave, с другой стороны, запускает свой обработчик только тогда, когда мышь покидает элемент, с которым она связана, а не потомок.Таким образом, в этом примере обработчик запускается, когда мышь покидает элемент Outer , но не элемент Inner .

1 голос
/ 11 ноября 2010

Вы, вероятно, должны использовать mouseleave вместо mouseout.Вы также можете использовать hover():

$('#someOtherElement').hover(function() {
    $('#homeref').toggle();
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...