Jquery зависает только на последнем элементе - PullRequest
0 голосов
/ 19 августа 2011

У меня следующая HTML-структура:

<div id="123" class="test">
   <div class="testMessage">Foo</div>
   <div><div class="testDate">2010</div></div>
   <div id="127" class="test">
      <div class="testMessage">Bar</div>
      <div><div class="testDate">2011</div></div>
   </div>
</div>

И следующий код JS:

$(".test").live({
    mouseenter:
        function()
        {
            $(this).find(".testDate").show();
        },
    mouseleave:
        function()
        {
            $(this).find(".testDate").hide();
        }
});

Проблема в том, что когда указатель мыши находится на #127 .testDate в #123 также отображается.Я думаю, это потому, что hover работает для родительского элемента.Как это исправить?

Спасибо!

Ответы [ 2 ]

2 голосов
/ 19 августа 2011
$(".test").live({
    mouseenter: function() {
        $('.testDate:first', this).show();
    },
    mouseleave: function() {
        $('.testDate:first', this).hide();
    }
});
2 голосов
/ 19 августа 2011

Я думаю, это потому, что у вас есть один элемент «.test» внутри другого «.test». Если вы разделите их, ваш код будет работать. Здесь - рабочий пример.

...