שלח תשובה

זירת השאלות

548
צפיות
7
תשובות

שלום לכולם…

,‏ 13 בינואר, 2005

יש לי שאלה כזאת אני מבצע את הקוד הבא :



function CheckTime(gamecode,gametype)
{
setTimeout(ShowReturnValue(gamecode,gametype),5000)
}
function ShowReturnValue(gamecode,gametype)
{
    
var GetGameStartEnd  = GetXmlResponse('gamecode=' + gamecode + ' ' + gametype,true)
var GetValue = GetGameStartEnd.split('n')
if (GetValue[0].length == 6)
{
clearTimeout()                               CheckTime(gamecode,gametype)
}
if (GetValue[0].length == 5)
{
clearTimeout()
window.location.reload()
}
}
function GetXmlResponse(gamecode,bText)
{
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.Open("POST","http://localhost/CardsGame/CheckGameUsers.aspx",false);
xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlhttp.send(gamecode);
return(bText?xmlhttp.responseText:xmlhttp.responseXML)
}


ואני מקבל שגיאה כזאת :
out of memory at line : 37

למה זה קורה ??

בתודה איתי.

תגיות:

7 תשובות

  1. BuildHome הגיב:

    אני לא רואה
    את שורה 37 בקוד שכתבת (אין אפילו שורה 30)..

    מה זו שורה 37 בקוד שלך?

  2. itay26 הגיב:

    תראה אני אסביר קצת יותר
    אני מבצע קריאה לדף אחר דרך xmlhttp ומוציא ממנו ערך שבודק האם שני אנשים נכנסו לדף מסוים במערכת…
    העניין הוא שאני מפעיל settimeout שבעצם מפעיל פונקציה כל 5 שניות שבודרת האם היוזרים נכנסו…
    ומה שקורה הוא זורק לי error out of memory
    בגלל שהוא רץ בלולאה אין סופית עד שמשתמש אחר מגיע…
    האם הקוד שלי נכון ומה יכול להיות הבעיה…??

    בתודה איתי.

  3. BuildHome הגיב:

    אבל למה כל 5 שניות?
    ניסית במקרה אולי כל דקה או יותר?

  4. itay26 הגיב:

    ניסית וזה עדיין
    זורק את אותה שגיאה…

    בתודה איתי.

  5. itay26 הגיב:

    אתה יכול לעזור לי במשהו אחר…
    איך אני מפעיל timer בצד הלקוח..?

    אבל בצורה אוטומטית בלי לחיצה על כפתור…

    אני ביצעתי בהעלת דף שיקפוץ לפונקציה ואז הוא מפעיל את ה – timer…

    בנוסף האם :

    settimeout היא פונקציה טובה של timer

    בתודה איתי.

  6. itay26 הגיב:

    מישהו יודע
    איך אני קורא לפונקציה ב – asp.net או asp מ – javascript ??

    בתודה איתי.

  7. זהר פלד הגיב:

    setTimeout מול setInterval….
    setTimeout היא פקודה שמגדירה השהיה מסויימת לפני ביצוע פעולה.

    setInterval, לעומתה, מגדירה שפעולה תתבצע כל X זמן.

    המסקנה: בשביל לבצע משהו כל X זמן יש להשתמש ב setInterval ולא ב setTimeout.

    בשביל לבצע משהו פעם אחת עם השהיה, יש להשתמש ב setTimeout.

    בכל מקרה צריך לבצע clearTimeout או clearInterval בהתאמה…

שלח תשובה