2013-05-16 3 views
0

меня это ниспадающее меню:Почему jQuery переключить направление «вверх» не работает?

http://jsfiddle.net/dTLpX/

проблема заключается в том, что направление переключения сверху вниз эффект не работает.

$(elem).find("ul").toggle("slide", {direction: "up"}, "slow"); 

Я попытался изменить направление вниз, вверх, сверху и снизу, но не работает. Почему?

, где я поступил не так?

+1

переключатель устарел после Jquery версии 1.8 – underscore

+3

@SamithaHewawasam кнопку [переключить обработчик события] (http://api.jquery.com/toggle- event /), а не метод [toggle (show/hide)] (http://api.jquery.com/toggle/) –

+1

Вы просмотрели 'slideToggle()'? В вашем случае это будет '$ (elem) .find (" ul "). SlideToggle (1000);' – rwalter

ответ

1

Вы не используете метод toggle() правильно. Посмотрите на API.

Если вы хотите сместить объекты, вероятно, вы ищете slideToggle(), который, кстати, идет вверх и вниз.

Помните, что в коде вы вызываете deactivateAll(), который будет скрывать меню каждый раз, когда нажимается меню (включая тот же самый открытый), после чего вы вызываете toggle() снова на этом элементе, который заставит его показывать снова. ..

Попробуйте скрипку увидеть, если это то, что вам нужно: http://jsfiddle.net/dTLpX/9/

+0

Этот API выходит из окна при использовании jQuery UI. – adeneo

+0

Большое спасибо @Tallmaris –

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