Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Замена ссылки при нажатии на него (https://javascript.ru/forum/misc/39149-zamena-ssylki-pri-nazhatii-na-nego.html)

kenzhik 18.06.2013 08:19

Замена ссылки при нажатии на него
 
Добрый день, уважаемые специалисты!
Помогите пожалуйста разобраться.
Имеется ссылка:
<a class="left nurtitle" href="#vse">Показать списком</a>

Нужен скрипт который бы при клике на ссылку менял текст самой ссылки "Показать списком" на "Свернуть" и обратно "Свернуть" на "Показать списком".

ksa 18.06.2013 08:40

kenzhik, тут на форуме есть поиск... ;)
http://javascript.ru/forum/misc/2324...st-ssylki.html

kenzhik 18.06.2013 09:00

Спасибо большое! Очень сильно помогли.
Поставил карму +

Вот это мне подошел:
<script type="text/javascript">
function Go(Obj) {
	Obj.innerHTML=(Obj.innerHTML=='Открыть')? 'Закрыть': 'Открыть';
}
</script>
<a href='#' onclick="Go(this); return false;">Открыть</a>

kenzhik 18.06.2013 10:03

ksa,
<script type="text/javascript">
function Go(Obj) {
	Obj.innerHTML=(Obj.innerHTML=='Открыть')? 'Закрыть': 'Открыть';
}
</script>
<a href='#' onclick="Go(this); return false;">Открыть</a>

Возникла еще вопросы:
как в этот скрипт добавить условие, чтобы он менял текст по классу.
т.е.
если ссылка не активна:
<a href='#' class="left" onclick="Go(this); return false;">Показать списком</a>

если ссылка активна:
<a href='#' class="left active" onclick="Go(this); return false;">Свернуть</a>

ksa 18.06.2013 10:06

Цитата:

Сообщение от kenzhik
добавить условие, чтобы он менял текст по классу

Проверяй наличие того класса...
http://jquery-docs.ru/Attributes/hasClass/#class

kenzhik 18.06.2013 10:40

Извиняюсь! Но я Вашу идею не уловил. Проверил наличие и?
Пожалуйста, если Вам не трудно, набросайте маленький пример.

ksa 18.06.2013 10:42

Цитата:

Сообщение от kenzhik
Проверил наличие и?

Почем мне знать, что тебе нужно делать при наличии или отсутствии какого-то класса? :lol:
Если нужный тебе класс есть у элемента - делай "одно". Если нет - другое...

kenzhik 18.06.2013 10:53

Цитата:

Сообщение от ksa (Сообщение 256931)
Почем мне знать, что тебе нужно делать при наличии или отсутствии какого-то класса? :lol:
Если нужный тебе класс есть у элемента - делай "одно". Если нет - другое...

Вот том и дело, что функция одна. Смена слова при наличии того или иного класса.

ksa 18.06.2013 11:20

Ну косинус же! (с)

<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<!--
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
function Go(Obj) {
	var o=$(Obj);
	if (o.hasClass('active')) {
		Obj.innerHTML='Показать списком'
		o.removeClass('active')
	} else {
		Obj.innerHTML='Свернуть'
		o.addClass('active')
	};
}
</script>
</head>
<body>
<a href='#' class="left" onclick="Go(this); return false;">Показать списком</a>
<a href='#' class="left active" onclick="Go(this); return false;">Свернуть</a>
</body>
</html>


Часовой пояс GMT +3, время: 15:15.