Есть 2 кнопки на сайте переключающие блоки кнопка 1('list-models') переключает на блок 1 ('#search-models-wrapper') кнопка 2 ('list-brands') переключает на блок 2 ('#search-brands-wrapper') Суть проблемы в том что блоки закрываются по клику вне блоков, а мне очень нужно чтобы они закрывались по клику на кнопки. Т.е. кнопки сейчас служат только для переключения блоков, а хочеться чтобы если например открыт блок1 по клику на кнопку 1 он же и закрывался. Вот сам кусок JS кода Код (Text): $('.list-model').click(function(){ $('.list-all').addClass('list-models'); $('.list-all').removeClass('list-brands'); $('#search-brands-wrapper').hide(); $('#search-models-wrapper').show(); $('#hide_models_and_brands').show(); }); $('.list-brand').click(function(){ $('.list-all').removeClass('list-models'); $('.list-all').addClass('list-brands'); $('#search-brands-wrapper').show(); $('#search-models-wrapper').hide(); $('#hide_models_and_brands').show(); }); $('#hide_models_and_brands').click(function(){ $('#search-brands-wrapper').hide(); $('#search-models-wrapper').hide(); $('#hide_models_and_brands').hide(); $('.list-all').removeClass('list-brands'); $('.list-all').removeClass('list-models'); });
Ой как много всего, аж глаза болят, если используете jQuery, то все намного проще чем создавать и удалять классы, посмотрите базовые функции, которые есть в арсенале jQuery. При этом найдете для себя решение в одну строку ;-)
Дело не в лени, а в том что не получается, курсов и литературы просмотрено/прочитано не мало, HTML 4 CSS 2,3 знаю хорошо, а PHP Javascript не знаю, в общем не дано.
Так может не стоит за это и браться? Просмотрите документацию по .toggle() и примеры, не поняв и упустив сейчас само желание разбираться в этом, не догоните потом уже никогда.
.toggle(): Данная функция находится в "Deprecated" и лучше ее уже не использовать. А вообще на вашем месте я бы по this-объекта который передаем, сохранять в переменную после события клика, создавая переменную якобы открытия, а потом когда еще раз кликнем на этот объект мы узнаем открыт ли он и если да, закроем. Есть определенный контейнер с ссылками или какой то уникальный ид или класс, мы найдем те ссылки которые нужны по уникальности и по их клику мы можем указать конкретные действия и изменения элементов.