Задать вопрос

Как правильно сделать скрипт?

Не кидайте тапками, так как в js криворукий( помогите уменьшить скрипт, как это правильно сделать.
суть в том что есть 3 линка, при нажатии на которые, 3 блока скрываются/отображаются.

$(".ua-link").click(function() {
				$(".ukrainian").removeClass("hidden");
				$(".ukrainian").addClass("display");
				$(".slovenian").addClass("hidden");
				$(".slovenian").removeClass("display");
				$(".russian").addClass("hidden");
				$(".russian").removeClass("display");
			});
			$(".si-link").click(function() {
				$(".slovenian").removeClass("hidden");
				$(".slovenian").addClass("display");
				$(".ukrainian").addClass("hidden");
				$(".ukrainian").removeClass("display");
				$(".russian").addClass("hidden");
				$(".russian").removeClass("display");
			});
			$(".ru-link").click(function() {
				$(".russian").addClass("display");
				$(".russian").removeClass("hidden");
				$(".slovenian").removeClass("display");
				$(".slovenian").addClass("hidden");
				$(".ukrainian").addClass("hidden");
				$(".ukrainian").removeClass("display");
			});

тут изначально все блоки скрыты. Нужно чтоб по дефолту 1 блок отображался, и уже потом если пользователь кликнул на ссылку 2 или 3, показался блок 2 или 3, а блок 1 скрыть. Ну и так ко всем блокам.

Заранее спасибо)
  • Вопрос задан
  • 322 просмотра
Подписаться 2 Оценить 1 комментарий
Решения вопроса 2
Как-то так.
<div class="ru lang">ru</div>
<div class="ua lang">ua</div>
<div class="sl lang">sl</div>

$('html').on('click','.lang',function() {
	$('.lang').not(this).addClass('hidden').removeClass('display');
	$(this).removeClass('hidden').addClass('display');
});
Ответ написан
Комментировать
Stalker_RED
@Stalker_RED
Если я ничего не путаю, slovenian сокращенно пишется как sl а не si.

Есть два варианта:
1. сперва поставить класс active кликнутому элементу, а потом у всех соседей (siblings) убрать. (в примере: пункт меню)
2. убрать у всех, и потом уже добавить нужному (в примере: контент)

Пример
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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