Как задать класс по умолчанию ?

Есть вот такой код. В стилях для класса active прописан filter:grayscale;
<div class="lang">
	<p>
		<a href="#">
			<img class="active" src="images/ua.png" height="24" width="24" ></a>
		<a href="#">
			<img class="active" src="images/uk.png" height="24" width="24"></a>
		<a href="#">
			<img class="active" src="images/ru.png" height="24" width="24"></a>
	</p>
</div>

R нему подключен этот код:
$(function(){
		    $('a').on('click',function(event){
		        $('a').removeClass('active');
		        $(this).addClass('active');
		   		 });
			});


Как сделать чтобы при переходе на страницу один из языков сразу был выбран(активирован), был цветным.
Ссылка на сайт
  • Вопрос задан
  • 2548 просмотров
Пригласить эксперта
Ответы на вопрос 4
nazarpc
@nazarpc
Open Source enthusiast
При чем тут PHP?
Ответ написан
Комментировать
MonkAlbino
@MonkAlbino
Фронтенд разработчик
Отвечал же уже:
в вашем PHP-коде, где происходит генерация блока с этими ссылками на языки, вам нужно дописывать к текущему языку (текущий брать из запроса или из параметров плагина, если данный блок рисуется плагином) класс `active`.
Javascript, который я привёл, это лишь эмуляция данного процесса. Как будто пользовать кликнул и ему перерисовалась вся страница.
Ответ написан
ixon
@ixon

Делаем класс active и вытягиваем из кук выбранную страну, если страны нет, ставим куку со страной по умолчанию, затем судя по этой куке присваиваем к одной из иконок класс active.
Можно при помощь jquery.cookie jquery.page2page.ru/index.php5/%D0%A0%D0%B0%D0%B1%...
<script>
if(!lang){//если пользователь первый раз на сайте
$.cookie('lang', 'ru');//ставим язык по умолчанию
}
var lang=$.cookie('lang');
$(".lang-"+lang).addClass( "active" );

function setlangu(e){
$.cookie('lang', e);
}
</script>
<div class="lang">
	<p>
		<a onclick="setlangu(ua)" href="javascript://">
			<img class="lang-ua" src="images/ua.png" height="24" width="24" ></a>
		<a onclick="setlangu(uk)" href="javascript://">
			<img class="lang-uk" src="images/uk.png" height="24" width="24"></a>
		<a onclick="setlangu(ru)" href="javascript://">
			<img class="lang-ru" src="images/ru.png" height="24" width="24"></a>
	</p>
</div>
Ответ написан
У Вас логика попутана.
Во-первых:
$(function(){
		    $('img', '.lang').on('click',function(event){
		        $('img', '.lang').addClass('active');
		        $(this).removeClass('active');
		   		 });
			});

Во-вторых:
<img src="images/ru.png" height="24" width="24"></a>
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
22 нояб. 2024, в 11:53
3000 руб./за проект
22 нояб. 2024, в 11:51
20000 руб./за проект
22 нояб. 2024, в 11:50
200000 руб./за проект