JQuery Hover последний элемент не удается - PullRequest
1 голос
/ 15 ноября 2011

У меня есть несколько div, которые анимируются при наведении мыши:

<div class="ivideo">
<a href="#">
<img src="default01.jpg" width="190" height="142" />                
</a>
</div>

<div class="ivideo">
<a href="#">
<img src="default02.jpg" width="190" height="142" />                
</a>
</div>

<div class="ivideo">
<a href="#">
<img src="default03.jpg" width="190" height="142" />                
</a>
</div>

Я использую плагин hoverIntent jquery для этого случая:

var configVideo = {
                sensitivity: 3,
                interval: 100,
                over: videoOver,
                timeout: 200,
                out: videoOut
            };

    $(".ivideo").hoverIntent( configVideo );

    function videoOver(){
        $('img',this).animate({ 
                opacity: 0.3
            }, 100 );

            $('<span><\/span>').appendTo($('a',this));
            $('span',this).fadeIn(100);

    }

    function videoOut(){
            $('img',this).animate({ 
                opacity: 1
            }, 100 );

            $('span',this).fadeOut(100 ,function() {$(this).remove()});
    }

Моя проблема в том, что все элементы хорошо реагируют (когда я быстро использую мышь), но последний div всегда будет терпеть неудачу (всегда застревать в событии mouseout)

В чем будет моя ошибка?Я надеюсь, что ваша помощь.

1 Ответ

0 голосов
/ 15 ноября 2011

Смотрите здесь

На самом деле все элементы не пройдут, но вы быстро их проверили один за другим и остановились с помощью мыши, когда закончили, верно?Проблема в том, что div будет автоматически иметь ширину 100%, поэтому нет никакого способа выйти из него, если вы не выходите из документа или не выходите из него с помощью мыши.Вот почему вам нужно установить фиксированную ширину или использовать другой элемент.

...