2012-05-30 20 views
0

я пытаюсь создать меню с JQuery, как в том, когда пользователь наведении курсора мыши элемент меню будет отображаться и будет прятаться, когда пользователь перемещает курсор мыши в сторонупытается создать меню с JQuery, но мой код разве работает

мой HTML-код:

<div class="span8 img"> 
    <img src="http://farm4.staticflickr.com/3198/2978120072_ca00381e08.jpg" alt="" width="550px" height="368px"> 
    <div class="like-box">Like</div> 
</div> 

CSS:

.like-box { 
    display: block; 
    background: rgba(255, 255, 255, .9); 
    padding: 15px; 
    position: absolute; 
    left: -1px; 
    width: 94%; 
    bottom: -1px; 
    display: none; 
} 

Javascript:

$('.img').mouseover(function() { 
     $(this).parent().siblings('.like-box').css('display', 'block'); 
     $(this).parent().siblings('.like-box').mouseleave(function() { 
     $(this).css('display', 'none'); 
     }) 
    }); 

, но это не кажется, что работать

ответ

2

свяжите mouseleave события из img при наведении курсора мыши, так как связывание события в наведении курсора мыши, связать событие MouseLeave к like-box каждый раз, что не является хорошим и ненужным.

$('.like-box').mouseleave(function() { 
    $(this).css('display', 'none'); 
}) 
$('img').mouseover(function() { 
    $(this) // this point to img 
     .next('.like-box') // point to like-box 
     .css('display', 'block');  
}); 

DEMO

Примечание:

  • $('.img') должен быть $('img'), потому что изображение не имеет класс с именем img, . селектор является использование для класса доступа. прочитать о selectors, а также class-selector
1

Вашей проблемы здесь:

$(this).parent().siblings('.like-box') 

$(this) является img, то parent() является div.span8.img и siblings() не ... нет.

Try с:

$(this).next('.like-box') 
+0

я попробовал, что до сих пор не работает:/ – hilarl

+0

нормально она работала у меня было имя селектора неправильно. но он не скрывается от мыши. но у меня есть код $ (это) .next ('как-поле. ') MouseLeave (функция() { \t \t $ (это) .css (' дисплей', 'NONE'); \t \t}). ; – hilarl

Смежные вопросы