вот моя, вероятно (и надеюсь) простая задача:Jquery нажмите и toggleClass вопрос
У меня есть список с изображениями как навигация. когда вы наводите на них курсор, jquery оживляет div с надписью и показывает это. он исчезает из мыши. (отлично работает)
, когда вы нажимаете на изображение, заголовок div анимации далее и накладывает изображение полностью (отлично работает). в то время как парящий над другим изображением в навигационном режиме заголовок div также оживляет (отлично работает).
проблема: при нажатии второго изображения навигации анимация первого (щелкнула) должна исчезнуть.
вот JQuery:
var thumbslide = $('.boxgrid.captionfull').click(function() {
$(this).toggleClass('clicked').children('.cover').stop().animate({top: 0, height:"230px", opacity: 1}, 350);
});
$('.boxgrid.captionfull:not(.clicked)').live('mouseenter', function() {
$(this).children('.cover').stop().animate({top: 130}, 350);
}).live('mouseleave', function() {
$(this).children('.cover').stop().animate({top: 230}, 350);
})
и вот ссылка на dev site
на любую помощь приветствуется, спасибо.
удивительный. работает. но почему код jamiecs (без части анимации) работает только при наведении курсора на последний элемент? я имею в виду, что он удалил класс, но не должен ли он снова вернуться в прежнее состояние? просто интересно .. – tobiasmay
Потому что ваш 'mouseenter' /' mouseleave' код устанавливает значение 'top'. Поэтому, когда вы moused над ним, он все равно будет делать эту анимацию, но непрозрачность не будет отменена. – PetersenDidIt