2012-01-24 3 views
1

Не знаете, почему это происходит. Когда вы нажмете одну мою ссылку, изображения сверху будут скользить вниз, и если вы нажмете на одно из этих изображений, они вернутся назад. Это работает именно так, как я хочу. Однако, когда вы вернетесь назад и снова щелкните по ссылке после того, как уже соскользнул, он не активирует слайд вниз при первом нажатии. Требуется два клика. Я бы хотел, чтобы он сделал только один клик.Функция JQuery Click

http://jsfiddle.net/nategines/FzqfZ/2/

Кто-нибудь знает, почему это происходит? и как это исправить и сохранить скользящую функцию одинаково?

+0

уточнить: при нажатии на ссылку он расширяется, и если вы нажмете его снова, он обрушится, и все будет хорошо. Но после расширения, если вы нажмете на изображение, он рухнет отлично, но он снова займет 2 клика по ссылке. –

ответ

0

Он скрывается, потому что ваш оператор if/else говорит - если элемент активен, а затем удалите активную и перейдите к концу.

if($menuelement.hasClass('active')) 

Этот код работает нормально, если вы дважды нажмете тот же пункт меню, но не щелкнете изображения. Вам нужно удалить активный класс при щелчке изображения. Измените этот код, чтобы исправить его.

http://jsfiddle.net/FzqfZ/4/

$(".hide").click(function(){ 
    $(".thumb").hide(500); 
    $(".active").removeClass("active"); 
}); 
+0

Это гораздо лучший способ сделать это. Спасибо за помощь! Я узнаю что-то новое каждый день! –

1

Редактировать функция скрыть в конце вашего JS, чтобы удалить активный класс, когда вы скрыть палец ...

$(".hide").click(function(){ 
     $(".thumb").hide(500).removeClass('active'); 
    }); 
Смежные вопросы