>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Проблемы с сайтами http://forum.mozilla-russia.org/viewforum.php?id=24 >Проблема со скриптом http://forum.mozilla-russia.org/viewtopic.php?id=45629 |
GerAlt86 > 13-08-2010 18:13:49 |
Господа,помогите,пожалуйста,новичку. Выделить код Код:<IMG id="buterfly" style="POSITION: absolute; Middle: 9000px" src="../img/nasekomoe4.gif"> <SCRIPT><!-- ddx=0;ddy=0;PX=600;PY=0;xm=0;ym =0; OlsW=Ols.width/2;OlsH=Ols.height/2 function MoveWinnie(){ x=Math.round(PX+=((xm-PX)*3)/400); y=Math.round(PY+=((ym-PY)*3)/400); Ols.style.left=x-OlsW; Ols.style.top=y //osw setTimeout("MoveWinnie()",10); } function doMouse(){ xm=window.event.x; ym=window.event.y; } document.onmousemove=doMouse; MoveWinnie(); //--></SCRIPT> При работе с IE и Opera не возникает никаких проблем.При работе с Mozilla Firefox бабочка висит в верхнем правом углу и не реагирует на движения курсора. Помогите,пожалуйста, исправить ошибку? |
ru-vadik > 13-08-2010 18:35:57 |
Отладчиком пользовались? |
Snik > 14-08-2010 23:57:17 |
GerAlt86 |
GerAlt86 > 15-08-2010 16:50:01 |
Сделал изменения по Вашему совету. Скрипт приобрел вид: Выделить код Код:<IMG id=Ols style="POSITION: absolute; Middle: 9000px" src="img/nasekomoe4.gif"> <SCRIPT> ddx=0; ddy=0; //начальное местоположение PX=600; PY=0; xm=0; ym =0 //переменная рисунка OlsW=Ols.width/2; OlsH=Ols.height/2; function MoveWinnie(){ //изменение на новые координаты x=Math.round(PX+=((xm-PX)*3)/400); y=Math.round(PY+=((ym-PY)*3)/400); //изменение местоположение самого рисунка относительного текущего местоположения курсора Ols.style.left=x-OlsW; Ols.style.top=y; setTimeout("MoveWinnie()",10) } function doMouse(e){ if (!e) e = window.event; xm=e.pageX; ym=e.pageY; } document.onmousemove=doMouse; MoveWinnie() </SCRIPT> Проблема осталося. Скрипт работает во всех браузерах -opera,IE, за исключением Mozilla Firefox(рисунок висит в верхнем углу и не реагирует на движения). Пожалуйста, помогите, ктонить знающий и грамотный. |
ViRUS > 16-08-2010 08:49:11 |
GerAlt86 даже смотреть противно. ЗЫ: Ух! Только сейчас заметил: - интересно, насколько долго это сможет проработать? |
Snik > 16-08-2010 10:19:46 |
GerAlt86 Выделить код Код:function doMouse(e) { var x = 0, y = 0; if (!e) e = window.event; //for IE if (e.pageX || e.pageY) { x = e.pageX; y = e.pageY; } else if (e.clientX || e.clientY) //for IE { x = e.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft) - document.documentElement.clientLeft; y = e.clientY + (document.documentElement.scrollTop || document.body.scrollTop) - document.documentElement.clientTop; } Ymouse=y-20; //image position is 20px above cursor Xmouse=x; } ... MoveWinnie() { document.getElementById("Ols").style.left = Xmouse+'px'; document.getElementById("Ols").style.top = Ymouse+'px'; } P.S. |