Показать сообщение отдельно
  #16 (permalink)  
Старый 02.05.2011, 16:11
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Вообще, просить написать страницу - наглость. Можно спрашивать. Не понимаешь - уточняй. Не понимаешь совсем - учи матчасть. И не надейся, что в следующий раз тебе ещё раз так помогут.

<html>
<head>
<style>
#login {
	display: none;
}
#login.show {
	display: block;
}
</style>
</head>

<body>
	<a href="Files/registration.html"> Register</a>
	<div>
		<a style="display: none" id="hideshow" href="login.html">Enter</a>
		<!-- login.html - это страница, куда перейдёт пользователь с отключённым javascript -->
		<div id="login">
			<FORM action="" method="POST">
				Login: <INPUT type="text" name="lgn"><br>
				Password: <INPUT type="password" name="pswd"> <br>
				<INPUT type="submit" name="enter" value="Enter">
			</FORM>
		</div>
	</div>
<script src="hideshow_login.js"></script>
</body>
</html>


Содержимое файла hideshow_login.js:

// скрипт должен быть в конце, а не в начале, тогда он будет выполнен после того, как загрузится DOM
	function showLoginWindow()
	{
	document.getElementById("login").className+=" show"; // менять стили через javascript - плохо. Лучше определить отдельный класс
	var hs=document.getElementById("hideshow");
	hs.innerHTML="Hide";
	hs.onclick= function(){hideLoginWindow(); return false};
	};
	
	function hideLoginWindow()
	{
	document.getElementById("login").className.replace(" show", ""); // удаляем класс
	var hs=document.getElementById("hideshow");
	hs.innerHTML="Enter";
	hs.onclick= function() {showLoginWindow(); return false} // меняем обработчик на ссылке
	hs.style.display="block"; // не очень понял, зачем эта строка, поэтому не стал трогать...
	};
	
	document.getElementById("hideshow").onclick= function() {showLoginWindow(); return false}; // вешаем обработчик на ссылку, return false нужен, чтобы не произошло перехода на другую страницу
Ответить с цитированием