22-08-2013, 20:07
|
|
|
חבר מתאריך: 12.08.05
הודעות: 883
|
|
היררכיית ותיזמון אירועים בjs וjquery
ערב טוב.
יש לי כפתור שכל לחיצה עליו מפעילה את הפונקציה animate של jquery, ומוסיפה margin לאלמנט מסויים.
מה שקורה עכשיו, זה ברגע שלוחצים פעמיים או יותר על הכפתור, ה"אירוע" החדש לא מחכה שהאירוע הקודם יסתיים, והוא מתחיל להתבצע במקביל.
למה זה משנה..? כי אני מבצע בדיקה על הmargin הקיים ובהתאם לזה מחליט איזה פעולה לבצע, ולכן בלחיצה כפולה הmargin שמגיע לאירוע השני הוא שיקרי, כי האירוע הראשון עוד לא סיים את פעולתו.
* אציין שאני לא בטוח שהפעולות באמת מתבצעות במקביל. יכול להיות ואפילו הגיוני שהאירוע השני מחכה עד שהאירוע הראשון יסתיים, אבל את נתוני הDOM הוא שומר ברגע הלחיצה ולא ברגע יישום האירוע.
אשמח לקצת עזרה בנושא.
הפתרון שכרגע יושב לי בראש זה לשמור את הmargin כמשתנה גלובאלי ולבצע את הבדיקה עליו. יש עם זה כמה בעיות עם פונקציות אחרות שאני מבצע לכן אני מעדיף שלא לפנות לפתרון הזה, מה גם שהוא יעבוד רק במקרה שהבעיה היא כמו שהצגתי אותה בכוכבית.
בקיצור, אין לי מושג.. תודה רבה ולילה טוב!
|