tdknight פורסם 2006 במאי 9 Share פורסם 2006 במאי 9 יש לי פונקציה שרצה כל פעם שאני מכוון את העכבר על תמונה מסויימת. הפונקציה מריצה את עצמה על ידי הפקודהsetTimeOutבכל פעם שהפונקציה נקראת, אני רוצה לבדוק האם העכבר כבר יצא מתחום התמונה ולא צריך להמשיך לקרוא לה, איך אני עושה את זה? קישור לתוכן שתף באתרים אחרים More sharing options...
bla7 פורסם 2006 במאי 9 Share פורסם 2006 במאי 9 למה הכוונה?איזה אירוע קורא לפונקציה הזאת? קישור לתוכן שתף באתרים אחרים More sharing options...
tdknight פורסם 2006 במאי 9 מחבר Share פורסם 2006 במאי 9 אני אביא סקריפט מקוצר שיציג את העיקרון של הקוד:<html><head><script>var X=0;function func1(){var ctimer;if (X==100){return;}X=X+1;ctimer=setTimeOut('func1()', 1000);}function func2(){x=0;}</script></head><body><img src='bla.jpg' onMouseOver='func1()' onMouseOut='func2()'></body></html>הבעיה היא כזאת. ברגע שאני מעביר את העכבר מעל התמונה, ה-X מתחיל לעלות (במקור זה מתבטא במשהו אחר, שאינו רלוונטי). כשאני מוציא את העכבר X מתאפס, אבל בגלל שהפונקציה הראשונה עדיין עובדת, ה-X מתחיל לעלות מחדש. אני רוצה בכל פעם שהפונקציה נקראת, לבדוק האם העכבר עדיין נמצא על התמונה. אם לא, אז לעצור את הפונקציה. קישור לתוכן שתף באתרים אחרים More sharing options...
bla7 פורסם 2006 במאי 9 Share פורסם 2006 במאי 9 בתור התחלה, אני חושב שיש לך בעיה עם הערך של X - לפני ה-RETURN אתה צריך לאפס את X, כדי שבפעם הבאה שהעכבר יהיה מעל האובייקט, זה יתחיל מ-0.דבר שני, אני מציע שתפריד את הפונקציה שסופרת מהפונקציה שנקראת כשהעכבר עולה על האובייקט.עכשיו, תגדיר משתנה בולאני גלובלי, תאפס אותו ל-FALSE - ובתחילת הפונקציה של OnMouseOver תהפוך אותו ל-TRUE. חוץ מזה, בכניסה לפונקציה FUNC2 תשנה את ערכו ל-FALSE שוב.בפונקציה הנוספת שיצרת בשביל הספירה, תבדוק, לא רק אם X==100 - אלא גם אם הערך הוא TRUE. אם הוא לא, אין סיבה להמשיך...זה ברור? קישור לתוכן שתף באתרים אחרים More sharing options...
sdfzxc פורסם 2006 במאי 9 Share פורסם 2006 במאי 9 פשוט מאוד, הפונקציה setTimeout שאתה משתמש בה מחזירה לך משתנה (מספר טיימר במקרה זה). אתה יכול לקרוא ל clearTimeout עם שם המשתנה הזה, וזה יפסיק. קישור לתוכן שתף באתרים אחרים More sharing options...
tdknight פורסם 2006 במאי 9 מחבר Share פורסם 2006 במאי 9 bla תודה רבה לך, לא חשבתי על זה קישור לתוכן שתף באתרים אחרים More sharing options...
Recommended Posts
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.