Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Шаблоны (TPL) » Как показать - скрыть блок при клике в short story?

Как показать - скрыть блок при клике в short story?


     19.07.2020    short story, скрыть блок, показать блок    Шаблоны (TPL), Стили (CSS), jQuery    1017

вопрос
Всем привет. У меня задача показать - скрыть блок при клике по кнопке в short story. Я реализовал это, но проблема в том что показываются и скрываются блоки во всех новостях на странице.

Сайт с реализацией: https://povarenok.online/

Скрипт в main.tpl:


Сама кнопка в short story:


Блок который скрываем - показываем в short story:


Спасибо за помощь.

Ответил: TeraMoune


Потому как события происходят как раз на все элементы класса 'latest-ingridient', а надо в функции каждого клика определять текущий и использовать его.

$(this) - текущий элемент кнопки
.prev() - выбирает элемент выше текущего


<script>
$(document).ready(function(){
	$('.content_toggle').click(function(){
	    $(this).prev().toggleClass('hide-menu');	
		if ($(this).prev().hasClass('hide-menu')) {
			$(this).html('<span class="fa fa-arrows-v" style="margin-right: 10px;"></span>Показать все ингредиенты<span class="fa fa-arrows-v" style="margin-left: 10px;"></span>');
		} else {
			$(this).html('<span class="fa fa-arrows-v" style="margin-right: 10px;"></span>Скрыть ингредиенты<span class="fa fa-arrows-v" style="margin-left: 10px;"></span>');
		}
		return false;
	});
});
</script>

2 комментария

ushkom
Юзер

ushkom - 19 июля 2020 20:20 -

Большое спасибо, все работает.

ushkom
Юзер

ushkom - 27 августа 2020 22:33 -

Если не сложно, подскажите пожалуйста как заставить выполнять этот скрипт если блок <div class="latest-ingridient hide-menu"> высотой больше 50px если меньше присвоить кнопке <a class="content_toggle" href="#"> display: none;
а с блока <div class="latest-ingridient hide-menu"> убрать класс hide-menu

Буду благодарен за помощь. Заранее спасибо

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх