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;} |
может без var?
img = document.getElementById("img"); img.src="что-то"; isrc = img.src; Проще можно сделать через карту изображения или элемент AREA http://www.htmlbook.ru/html/area.html хотя я с ними ни когда не работал, посмотри |
var убрал, непомогло... кстати зачем писать вар каждый раз - незнаю, но пачимуто все так делают
а арею ща попробую, помеому это самое оно :)) |
все, area помогло... проблема решена
|
Не могу найти где в статьях на javascript.ru говорилось про var. Но идея такова что если без var то переменная сразу становится глобальной то есть видна везде, а если с ней то она видна только в той части кода в которой объявлена. Поищи на сайте в статьях
|
Часовой пояс GMT +3, время: 18:49. |