Drag object fejl...

Tags:    javascript

<< < 12 > >>
Hej allesammen!
Jeg har prøvet at lae mig et lille drag miljø, men det virker desværre ikke. Den røde div bevæger sig ikke. Og Firebug kommer ikke med fejl.

Mit mini-miljø:
Fold kodeboks ind/udKode 




Indlæg senest redigeret d. 04.06.2008 23:18 af Bruger #11328
Du har skrevet:
object.left = mousePosX;
object.top = mousePosY;
Det skal være:
object.style.left = mousePosX;
object.style.top = mousePosY;;)






Det er rettet



Det er rettet, og virker stadig ikke... se i koden



I stedet for at have denne kode:
while(isMouseUp == false)
{
objectLeft = object.style.left;
objectTop = object.style.top;
mouse_objectOffsetX = objectLeft - mousePosX;
mouse_objectOffsetY = objectTop - mousePosY

object.style.left = mousePosX;
object.style.top = mousePosY;
}
så brug onmousemove så i din div skrive du onmousemove="onmousemove();"
og din onmousemove ser sådan her ud:
Fold kodeboks ind/udKode 

skulle virke er ikke testet



Indlæg senest redigeret d. 04.06.2008 23:25 af Bruger #11596
Koden ser nu sådan ud:
Fold kodeboks ind/udKode 

Og Firebug brokker sig over: Too much recursion...



Fold kodeboks ind/udJScript kode 





Samme fejl.
Når man så klikker på plusset i Firebug kommer der en milliard mousemove(undefined), og til sidst en ala mousemove(mousemove clientX = 0 clientY = 0)





Den her kode virker:
Fold kodeboks ind/udKode 

Men du bliver nødt til at sætte position: absolute;



husk at der skal angives px ved top,left,right,bottom,width og height. Ellers vil firefox ikke læse størrelserne rigtigt.



Hmmm, ja følgende kode virker:
Fold kodeboks ind/udKode 

Havde glemt både px og position: absolute.

men den brokker sig stadig over (og med god grund for den hakker) når man bevæger diven "ned over skærmen" altså forøger X og Y positionerne (Too much recursion). Hvis man tager den op ad skærmen eller til venstre, så X og Y bliver mindre hakker den ikke....? Hvad er problemet?



<< < 12 > >>
t