עבור לתוכן

עזרה בJS - פונ' יחודית לכל אובייקט

Featured Replies

פורסם

הי, יש לי מספר אובייקטים המופיעים על מפה (באדיבות גוגל) עכשיו לכל אובייקט יש פונ' fade. הבעיה היא שאם אני רוצה לפונ' כמה פעמים על אובייקטים שונים (בהפרש זמן קצר מאוד) אז הפונ' בצורה מובנת עובדת רק על האובייקט האחרון שהיא ניקראה עליו. השאלה היא איך אני משנה את זה? אני רוצה שברגע שקראתי לפונ' על אובייקט מסויים היא תרוץ עליו עד סופה ללא קשר למה שרץ ברקע.

הפונ' מוגדרת כך:

InfoBubble.prototype.fade = function(i){}

תודה

פורסם

מה שאתה מבקש קשור לקוד שבתוך הפונקציה, לא לצורת ההגדרה שלה. אם תביא את הקוד אולי יהיה אפשר לפתור את זה.

פורסם
  • מחבר

בסדר גמור, מחר תיהיה לי גישה אליו ואני יעלה אותו. למה אבל זה קשור לקוד ולא לפונ'?

הקוד עצמו עובד על האובייקט עליו הוא נקרא ומכיוון שהוא ניקרא כמה פעמים הוא עובד על האובייקט האחרון שהוא נקרא עליו. אגב הקוד עצמו ממש סבוך וספק עם העלאת הפונ' תעזור למשהו. מכיון אבל שאני לא עוסק בתחום יומיים אני ישמח להסבר תיאורטי גם שאיתו אני מאמין שאני יצליח להשיג את מה שאני מחפש

תודה

פורסם

פונקציה מסוג fade היא קצת מורכבת כי היא רק מתחילה תהליך שלוקח זמן ולכן כדי לא לתקוע את כל ה-UI בזמן ה-fade משתמשים בטיימרים שקוראים לפונקציות נוספות שימשיכו ויסיימו את התהליך.

מבחינת הגדרה הפונקציה אכן פועלת כל פעם על האובייקט שעליו היא נקראה, השאלה היא למה קריאה חוזרת לפונקציה דורסת את הקריאה הקודמת. בלי לראות את הקוד אני יכול רק לנחש שהבעיה היא שהפונקציה משתמשת כל פעם מחדש באותם טיימרים או במשתנים גלובלים אבל כאמור זה רק ניחוש.

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים