fadeToggle следующий элемент при наведении - PullRequest
0 голосов
/ 13 октября 2011

У меня есть следующий код, чтобы показать следующий элемент в домене при нажатии, я хотел бы преобразовать этот же код в то, что я мог бы использовать для простого события при наведении курсора. Есть ли в jQuery простой способ сделать что-то подобное или я должен использовать события от .bind() до mouseover и mouseout? Я знаю, что это должно быть просто, я, вероятно, просто не думаю ясно.

$('#el').click(function(e){
    e.preventDefault();
    var $prevEl =   $(this).parent().find('.prev-el');
    $prevEl.fadeToggle();
});

Следует упомянуть, что я бы хотел, чтобы $prevEl оставался видимым после наведения запускающего элемента #el. Как лучше всего это сделать?

Заранее спасибо,

DT

Ответы [ 2 ]

2 голосов
/ 13 октября 2011

Вы можете использовать $('#el').mouseover(... вместо $('#el').click(..., но вы должны использовать fadeIn вместо fadeToggle, когда используете mouseover:

$('#el').mouseover(function(e) {
    var $prevEl = $(this).parent().find('.prev-el');
    $prevEl.fadeIn();
});

http://jsfiddle.net/mblase75/eXjTb/3/

Однако, если вы хотите, чтобы оно исчезло при наведении мыши, используйте .hover как сокращенный способ объединить два и сохранить fadeToggle:

$('#el').hover(function(e) {
    var $prevEl = $(this).parent().find('.prev-el');
    $prevEl.fadeToggle();
});

http://jsfiddle.net/mblase75/eXjTb/2/

0 голосов
/ 13 октября 2011

это должно работать:

$('#el').mouseover(function(){
    $(this).parent().find('.prev-el').fadeIn();
});

Кстати, вы можете использовать .next () и .prev () вместо .parent().find(...) (в зависимости от вашего HTML)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...