Вернуться   Форумы Якутск Онлайн > Hi-Tech > Сисадмины и программисты > Веб-дизайн
Ответ
 
Опции темы Опции просмотра

Замена изображений в javascript
Старый 16.09.2009, 00:06   #1
Renovatio
Постоялец
 
Аватар для Renovatio
 
Renovatio вне форума
Регистрация: 04.12.2007
Адрес: Стул
Сообщений: 751
Renovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутацию
По умолчанию Замена изображений в javascript

Правильно ли сделал замену изображений?

<td class="nav5">
<a href="javascript:void(0)" onMouseOut="rollImage('0','out')" onMouseOver="rollImage('0','over')" onMouseDown="rollImage('0','down')" title="О нас"><img src="img/nav5.gif"></a>
</td>


<head>
<script type="text/javascript" language="javascript">
<!--
//Массив для хранения изображений версий "нажатия"
var overImg = new Array ();
overImg[0] = new Image (24,24);

//Массив для хранения изображений версий "курсор поверх изображения"
var downImg = new Array();
downImg[0] = new Image(24,24);

//Массив для хранения изображений по умолчанию
var defaultImg = new Array ();
defaultImg[0] = new Image (24,24);

//Загрузка over-изображений
overImg[0].src = "img/nav5_2.gif";

//Загрузка down-изображений
downImg[0].src = "img/nav5_1.gif";

//Загрузка изображений по умолчанию
defaultImg[0].src = "img/nav5.gif";

//Изменения состояния изображения в зависимости от пришедшего события
function rollImage(img,type)
{
switch(type)
{
case "over":
document.images[img].src = overImg[img].src;
break;
case "out":
document.images[img].src = defaultImg[img].src;
break;
case "down":
document.images[img].src = downImg[img].src;
}
}

//-->
</script>
</head>
__________________
Когда власть любви превзойдет
любовь к власти,наступит мир на земле. -Jimi Hendrix Тыкни
  Ответить с цитированием

Старый 16.09.2009, 00:22   #2
rohard
Постоялец
 
Аватар для rohard
 
rohard вне форума
Регистрация: 19.01.2009
Адрес: На восток от Солнца, на запад от Луны.
Сообщений: 1,120
rohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутацию
Отправить сообщение для rohard с помощью ICQ
По умолчанию

Навигация? А не проще в этом случае сделать css'ом (псевдоклассом hover)?
  Ответить с цитированием

Старый 16.09.2009, 14:19   #3
Renovatio
Постоялец
 
Аватар для Renovatio
 
Renovatio вне форума
Регистрация: 04.12.2007
Адрес: Стул
Сообщений: 751
Renovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутацию
По умолчанию

А как сделать так чтобы после нажатия рисунок изменился?
__________________
Когда власть любви превзойдет
любовь к власти,наступит мир на земле. -Jimi Hendrix Тыкни
  Ответить с цитированием

Старый 16.09.2009, 15:30   #4
rohard
Постоялец
 
Аватар для rohard
 
rohard вне форума
Регистрация: 19.01.2009
Адрес: На восток от Солнца, на запад от Луны.
Сообщений: 1,120
rohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутацию
Отправить сообщение для rohard с помощью ICQ
По умолчанию

Пример.
Код:
<head>
	<style type="text/css">
	body, div, ul, li {
		margin: 0;
		padding: 0;
	}
	#wrap {
		padding: 20px;
	}
	#menu {
		list-style: none;
	}
	#menu li {
		float: left;
	}
	#menu li a {
		display: block;
		padding: 10px;
		border-top: solid 2px #ccc;
		background-color: #efefef;
		text-decoration: none;
		color: #555;
		font: 13px "Trebuchet MS";
	}
	#menu li a:hover {
		border-top: solid 2px #666;
		background-color: #e7e7e7;
		color: #222;
	}
	#menu li a:active {
		border-top: solid 2px #c77;
	}
	</style>
	<title> ololo </title>
</head>
<body>
	<div id="wrap">
		<ul id="menu">
			<li><a href="#"> first element </a></li>
			<li><a href="#"> second element </a></li>
			<li><a href="#"> third element </a></li>
		</ul>
	</div>
</body>
Если используется изображение, то используй спрайты. То есть один граф. файл с тремя состояниями кнопки. Тогда можно будет не менять изображение целиком, а менять лишь позицию. Пример: background: url(../img/pic.gif) 0 0 no-repeat; по умолчанию и background: url(../img/pic.gif) 128px 0 no-repeat; при hover'е. В этом случае не будут производиться дополнительные запросы на сервер за пикчей и пользователю не придется ждать загрузки при наведении (ибо она уже загружена).

Последний раз редактировалось rohard, 16.09.2009 в 15:45. Причина: не все сказал.
  Ответить с цитированием

Старый 18.09.2009, 10:10   #5
Renovatio
Постоялец
 
Аватар для Renovatio
 
Renovatio вне форума
Регистрация: 04.12.2007
Адрес: Стул
Сообщений: 751
Renovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутацию
По умолчанию

Я вот никак не могу понять, что это за display:block
__________________
Когда власть любви превзойдет
любовь к власти,наступит мир на земле. -Jimi Hendrix Тыкни

Последний раз редактировалось Renovatio, 19.09.2009 в 10:20.
  Ответить с цитированием

Старый 18.09.2009, 10:29   #6
rohard
Постоялец
 
Аватар для rohard
 
rohard вне форума
Регистрация: 19.01.2009
Адрес: На восток от Солнца, на запад от Луны.
Сообщений: 1,120
rohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутацию
Отправить сообщение для rohard с помощью ICQ
По умолчанию

Цитата:
Сообщение от Renovatio Посмотреть сообщение
Я вот никак не могу понимать, что это за display:block
Чтобы элемент вел себя как блок.
Спецификация для кого написана?
__________________
Почти.
  Ответить с цитированием

Старый 18.09.2009, 18:38   #7
Renovatio
Постоялец
 
Аватар для Renovatio
 
Renovatio вне форума
Регистрация: 04.12.2007
Адрес: Стул
Сообщений: 751
Renovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутациюRenovatio имеет наиславнейшую репутацию
По умолчанию

Цитата:
Сообщение от rohard Посмотреть сообщение
Чтобы элемент вел себя как блок.
По подробнее можешь объяснить
__________________
Когда власть любви превзойдет
любовь к власти,наступит мир на земле. -Jimi Hendrix Тыкни

Последний раз редактировалось Renovatio, 19.09.2009 в 10:20.
  Ответить с цитированием

Старый 18.09.2009, 18:41   #8
Regis Filius
SuperVisor TF2
 
Regis Filius вне форума
Регистрация: 21.06.2008
Сообщений: 623
Regis Filius имеет наиславнейшую репутациюRegis Filius имеет наиславнейшую репутациюRegis Filius имеет наиславнейшую репутациюRegis Filius имеет наиславнейшую репутациюRegis Filius имеет наиславнейшую репутациюRegis Filius имеет наиславнейшую репутациюRegis Filius имеет наиславнейшую репутациюRegis Filius имеет наиславнейшую репутациюRegis Filius имеет наиславнейшую репутациюRegis Filius имеет наиславнейшую репутациюRegis Filius имеет наиславнейшую репутацию
По умолчанию

Элементы блочного типа занимают всю доступную ширину, в то время как элементы встроенного типа занимают только ту площадь, которая им необходима. Короче блочные это по умолчанию div, а встроенные span.
Здесь это надо для ссылок, чтобы был эффект кнопки, а не просто ссылочный текст.
  Ответить с цитированием

Старый 18.09.2009, 19:02   #9
rohard
Постоялец
 
Аватар для rohard
 
rohard вне форума
Регистрация: 19.01.2009
Адрес: На восток от Солнца, на запад от Луны.
Сообщений: 1,120
rohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутацию
Отправить сообщение для rohard с помощью ICQ
По умолчанию

Я сейчас проверить не могу, но в IE6, скорее всего, будет одна "фича" - при наведение на область отступа ссылок, стиль меняться не будет. Стиль будет меняться только при наведении на текст.
__________________
Почти.
  Ответить с цитированием

Старый 18.09.2009, 23:26   #10
rohard
Постоялец
 
Аватар для rohard
 
rohard вне форума
Регистрация: 19.01.2009
Адрес: На восток от Солнца, на запад от Луны.
Сообщений: 1,120
rohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутациюrohard имеет наиславнейшую репутацию
Отправить сообщение для rohard с помощью ICQ
По умолчанию

Цитата:
Сообщение от rohard Посмотреть сообщение
Я сейчас проверить не могу, но в IE6, скорее всего, будет одна "фича" - при наведение на область отступа ссылок, стиль меняться не будет. Стиль будет меняться только при наведении на текст.
Проверил. Естественно, так и есть. Лечится добавлением overflow: hidden; в #menu li
__________________
Почти.
  Ответить с цитированием
Ответ


Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +9, время: 11:32.


vBulletin skin developed by: eXtremepixels
Powered by vBulletin® Version 3.6.3
Copyright ©2000 - 2024, Якутск-Online. Перевод: zCarot