|
|
|
| как сделать чтобы картинка передвигалась на 100 пикселей,если мышка передвигаеться на 100 пикселей(не на 1 а на фиксированное число пикселей)....вот код каторый передвигает картинку на 100 пикселей,но при передвижении мышки на 1 пиксель:
<script language="JavaScript1.2">
<!--
var dragapproved=false
var z,x,y, temp1, temp2
function move(){
if (event.button==1&&dragapproved){
z.style.pixelLeft=(temp1+event.clientX - x)*100
z.style.pixelTop=(temp2+event.clientY - y)*90
z.style.cursor="move"
return false
}
}
function drags(){
if (!document.all)
return
dragapproved=true
z=event.srcElement
//z.style.zIndex=-1
temp1=z.style.pixelLeft
temp2=z.style.pixelTop
x=event.clientX
y=event.clientY
document.onmousemove=move
}
function dragstop()
{
z.style.cursor=""
dragapproved=false
new_x = z.style.pixelLeft
new_y = z.style.pixelTop
diff_x = new_x-temp1
diff_y = new_y-temp2
//z.style.zIndex=""
z.style.pixelLeft=temp1
z.style.pixelTop=temp2
xajax_make_action('', 'grab_'+diff_x+'_'+diff_y);
}
document.onmousedown=drags
document.onmouseup=dragstop
//-->
</script>
|
| |
|
|
|
|
|
|
|
для: GladiatoR
(12.04.2006 в 18:08)
| | Дали бы работающий пример, а то что, писать самому, какая картинка?
Надо, чтобы передвигалось прыжками?
Заменяете передвижение на изменение своего нового параметра при рисунке, а из него вычисляете pixelLeft, pixelTop (это в FF работает?) через Math.floor(xx/100)*100 .
----
Дополнение:
В этой реализации не нужно даже запоминать нового параметра, правда, привязка к сетке относительно окна, а не координат документа. (сделано на базе кода http://example.javascript.aho.ru/JsPrimeryCode-56.htm ) | |
|
|
|