click v mousemove evente - javascript

Programovacie jazyky, rady, poradňa...
Preetro
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 269
Registrovaný: 16 nov 2005, 19:40
Bydlisko: škatuľka od topánok

click v mousemove evente - javascript

Príspevok od používateľa Preetro »

čaute, potrebujem poradiť, ako docieliť nasledovný problém:
na elemente je bindnutý click event, keď sa na element klikne, tak sa uložia súradnice kliknutia a registruje sa mousemove event, kde sa pri pohybe myši nad kliknutým elementom zaznamenáva vždy aktuálna súradnica myši. Chcem docieliť to, že keď užívateľ hýbe myšou v mousemove a následne klikne, tak sa tá aktuálna súradnica uloží a unbindne sa mousemove event a užívateľ môže znovu kliknúť trebárs aj na ten istý element, na ktorý klikol a znovu sa bindne nový mousemove event atď...

skúšal som to riešiť tak, že v click funkcii som bindol mousemove a v mousemove funkcii som bindol ďalší click event na ten istý element. Ono to aj funguje, akurát problém je v tom, že sa tá click event funkcia v mousemove zavolá toľkokrát, koľkokrát myš zmení svoje súradnice a práveže ja ju potrebujem zavolať len 1x.

Dúfam, že som to jasne opísal, ak je niečo nejasné, tak sa to potom pokúsim upresniť.

Ďakujem za akúkoľvek pomoc.
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: click v mousemove evente - javascript

Príspevok od používateľa audiotrack »

chceš docieliť problém? TO je zaujímavý slovný zvrat :)

spravíš to cez mutex. Logická premenná, ktorá ak je true tak nastavíš bind na mousemove a premennú dáš na false. Ak je false, zrušíš bind na mousemove a premennú nastavíš na true. Čiže o nastavovanie a rušenie eventu sa bude starať iba click, mousemove nebude robiť nič. Každé druhé kliknutie myši ruší mousemove, každé nepárne ho nastavuje
Preetro
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 269
Registrovaný: 16 nov 2005, 19:40
Bydlisko: škatuľka od topánok

Re: click v mousemove evente - javascript

Príspevok od používateľa Preetro »

ďakujem pomohlo :)
Napísať odpoveď