Показать сообщение отдельно
  #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] для оформления листингов кода в теле сообщения
Ответить с цитированием