Сократить код в 2 раза
Здравствуйте, есть код, который по клику закрывает/раскрывает меню и список:
function closingList_1 () { var utiliti = $('#utiliti'); var calcConv = $('#menu1'); utiliti.on('click', function () { if (calcConv.css("display") == "block") { calcConv.css("display", "none"); } else { calcConv.css("display", "block"); } }); } closingList_1 (); function closingList_2 () { var different = $('#different'); var sort = $('#sort'); different.on('click', function () { if (sort.css("display") == "block") { sort.css("display", "none"); } else { sort.css("display", "block"); } }); } closingList_2 (); как его можно сократить в 2 раза? Нужно написать какую-то общую функцию для них, только не пойму как это сделать. Спасибо |
то, что получилось у меня, так это я задал классы и сделал с ними:
function closing () { $('.utilitiDifferent').on('click', function () { if ($('.sortMenu').css("display") == "block") { $('.sortMenu').css("display", "none"); } else { $('.sortMenu').css("display", "block"); }}); } closing (); но это не подходит, так как при нажатии на 1-н из них срабатывает и другой тоже |
Цитата:
Сделай тестовый пример и напиши, что нужно в итоге... |
http://jsfiddle.net/Ltx99uaL/2/
По каким-то причинам там не работает, но не в этом суть. Как должно быть: при нажатии на один из квадратиков открывается подменю, которое внутри него(неважно что оно пустое). При повторном нажатии закрывается. Код,который был приведен самым 1-м - работает корректно, но его нужно сократить в 2 раза. Тот способ, что я привел 2-м - с классами, тоже работает, но не корректно. |
Под сокращением подразумевается написание, возможно, нового кода, который будет проще, короче и красивее чем старый.
|
http://jsfiddle.net/Ltx99uaL/4/
примерно так это делается |
Спасибо
|
Часовой пояс GMT +3, время: 13:10. |