Показать сообщение отдельно
  #5 (permalink)  
Старый 13.02.2013, 11:17
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,214

Сообщение от Densofting
Можно ли как-то сократить скрипт?
Как вариант...

<!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">
.off {
	display: none;
}
</style>
<script type="text/javascript">
function off(Id) {
	var o=document.getElementById(Id);
	var oa=document.getElementById('menu');
	oa=oa.getElementsByTagName('a');
	var i;
	for (i=0; i<oa.length; i++) {
		oa[i].className=(oa[i]==o)? 'off': '';
	};
};
</script>
</head>
<body>
<ul id='menu'>
	<li><a href="#" id="h1" class='off'>1</a></li>
	<li><a href="#" id="h2">2</a></li>
	<li><a href="#" id="h3">3</a></li>
	<li><a href="#" id="h4">4</a></li>
	<li><a href="#" id="h5">5</a></li>
</ul>
<script type="text/javascript">
var o=document.getElementById('menu'),
	i;
o=o.getElementsByTagName('li');
for (i=0; i<o.length; i++) {
	o[i].onclick=(function (Id) {
		return function () {
			off(Id);
		}
	})('h'+(i+1));
};
</script>
</body>
</html>
Ответить с цитированием