Показать сообщение отдельно
  #1 (permalink)  
Старый 16.02.2015, 08:30
Новичок на форуме
Отправить личное сообщение для 0xSS Посмотреть профиль Найти все сообщения от 0xSS
 
Регистрация: 16.02.2015
Сообщений: 4

$('.forAdmin').toggle(); срабатывает дважды для 1 элемента
Имеется вот такой простенький макет:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
	<style>
		.forAdmin {
			display:none;
		}
	</style>
	<script type='text/javascript' language='javascript' src='/js/jquery-1.3.2.min.js'></script>
	<script type="text/javascript">
		$(window).load(function(event){
			$('#button').click(function(){
				$('.forAdmin').toggle();
			});
		});
	</script>
</head>
<body>
	<button id='button' name="push" type="submit" value="Кнопка">Кнопка</button>
	<ul>
		<li>
			<h1>Заголовок 1</h1>
			<a class='forAdmin' href='/'>Ссылка 1</a><br/>
			<a class='forAdmin' href='/'>Ссылка 2</a>
		</li>
		<li class='forAdmin'>
			<h1>Заголовок 2</h1>
			<a class='forAdmin' href='/'>Ссылка 3</a><br/>
			<a class='forAdmin' href='/'>Ссылка 4</a>
		</li>
	</ul>
</body>
</html>

Все элементы класса .forAdmin скрыты в CSS. Нажатие на кнопку должно их переключать.
Однако правильно скрипт срабатывает только при первом нажатии - все элементы .forAdmin отображаются.
При втором нажатии, когда все .forAdmin должны спрятаться, Ссылка 3 и Ссылка 4 получают "display: inline;"
И при последующих кликах Ссылка 3 и Ссылка 4 получают противоположное от остальных элементов состояние. Т.е. когда все .forAdmin скрыты - последние 2 ссылки отображаются, а когда все элементы должны быть отображены - ссылки скрываются.

Подскажите, где косяк и как исправить.
Ответить с цитированием