Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.04.2009, 14:32
xXDeMoNXx
 
Сообщений: n/a

img, mousemove + mouseover
В js новичек, но мне нужно сделать что бы при наведении на определенную часть картинки записывалась цифра и подставлялась как часть атрибута src, но если убрать мышь должна вернутся исходная картинка.

Все хорошо но вот если первый раз навести и убрать - норм, а второй и дальше - останется картинка которая была при наведении.

Вот код.

var img = document.getElementById("img");
	 // Записываем значение src, которое нужно будет вернуть
	 var isrc = img.src; 
	 // Левый верхний угол
	 var lx = absPosition(img)["x"];
	 var ly = absPosition(img)["y"];
	 // Правый нижний
	 var rx = lx + img.width;
	 var ry = ly + img.height;
	 img.onmousemove = function() {
		 var mx = defPosition()['x'];
		 //В зависимости от положения мыши по оси X меняем изображение
		 if(mx >= lx && mx <= lx + 15) n = 1;
		 if(mx > lx + 15 && mx <= lx + 29) n = 2;
		 if(mx > lx + 29 && mx <= lx + 43) n = 3;
		 if(mx > lx + 43 && mx <= lx + 57) n = 4;
		 if(mx > lx + 57 && mx <= rx) n = 5;
		 img.src = host + "img/" + n + "hover.png";
		
	 }
	 // Должна вернутся исходная картинка
	 img.onmouseout = function () {img.src = isrc;}

Последний раз редактировалось Андрей Параничев, 11.04.2009 в 15:44. Причина: Пользуйтесь bb-тегами [js] и [html] для оформления листингов кода в теле сообщения
Ответить с цитированием
  #2 (permalink)  
Старый 11.04.2009, 03:23
Аспирант
Отправить личное сообщение для milk3dfx Посмотреть профиль Найти все сообщения от milk3dfx
 
Регистрация: 26.01.2009
Сообщений: 30

может без var?
img = document.getElementById("img");
img.src="что-то";
isrc = img.src;

Проще можно сделать через карту изображения или элемент AREA
http://www.htmlbook.ru/html/area.html
хотя я с ними ни когда не работал, посмотри
Ответить с цитированием
  #3 (permalink)  
Старый 11.04.2009, 14:07
xXDeMoNXx
 
Сообщений: n/a

var убрал, непомогло... кстати зачем писать вар каждый раз - незнаю, но пачимуто все так делают


а арею ща попробую, помеому это самое оно )
Ответить с цитированием
  #4 (permalink)  
Старый 11.04.2009, 15:00
xXDeMoNXx
 
Сообщений: n/a

все, area помогло... проблема решена
Ответить с цитированием
  #5 (permalink)  
Старый 13.04.2009, 07:35
Аспирант
Отправить личное сообщение для milk3dfx Посмотреть профиль Найти все сообщения от milk3dfx
 
Регистрация: 26.01.2009
Сообщений: 30

Не могу найти где в статьях на javascript.ru говорилось про var. Но идея такова что если без var то переменная сразу становится глобальной то есть видна везде, а если с ней то она видна только в той части кода в которой объявлена. Поищи на сайте в статьях
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
mouseover, mouseout - не распространяется на дочерние элементы barmaley Events/DOM/Window 31 01.06.2017 08:52
Добавить alt во все img ;) ExtendedPlay Общие вопросы Javascript 3 05.04.2009 01:38
Как поменять SRC у Img в Pocket IE Maxidrom Events/DOM/Window 2 08.10.2008 15:05
Изменение параметра "ALT"("TITLE") тега IMG посредством DOM Гость Элементы интерфейса 3 21.02.2008 10:02