2010-02-12 20 views
1

哇!我只是發現了一些,每次我試圖調用一個函數,無論什麼功能,在JavaScript中,不知何故jQuery和MS的ajax框架的JavaScript捕捉它,並檢查該文件已準備就緒(document.onready或其他),並永遠不會返回控制回到即時通訊功能,或任何它,我的功能永遠不會結束被調用!爲什麼它在做這個?我從來沒有要求它!幫助:調用JavaScript函數時,它是由jQuery的onready方法打斷!

我只有這些庫,腳本/鏈接引用參考文獻,你在你的母版頁的頂部做。

thsi是荒謬的,任何人有什麼想法?

這裏是代碼調用中斷UpdateGlobalVariables

<script src="../../Scripts/MicrosoftAjax.debug.js" type="text/javascript"></script> 
<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script> 
<script src="../../Scripts/MicrosoftMvcAjax.debug.js" type="text/javascript"></script> 
<script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script> 
<script src="../../Scripts/jquery-1.3.2.js" type="text/javascript"></script> 
<script src="../../Scripts/jquery.superload.js" type="text/javascript"></script> 
<script src="~/Views/Shared/JScript.js" type="text/javascript"></script> 

<script type="text/javascript" language="javascript"> 
     var RatePicPanelRunCount = 0; 

     function ChangeMainPic(newSrc) { 
     $get("imgPic").src = newSrc; 
     alert($get("imgPic").src + '\n' + newSrc); 
     RatePicPanelRunCount++; 
     } 


     function UpdateGlobalVariables() { 
     // Update variables... 
     ShownPicID = <%=Model.CurShownPicID%>; 
     ShownUserID = <%= Model.CurShownUserID %>; 
      CurrentUserID = <%= UserID %>; 
      alert('CurUserID is ' + CurrentUserID); 
      alert('From cookie its ' + getCookie('UserID')); 
     } 

     debugger; 

    if (RatePicPanelRunCount == 0) { 
      ChangeMainPic('<%= Model.CurPicURL%>'); 
      UpdateGlobalVariables; 
    }; 

</script> 
+0

什麼是最簡單的自包含的例子,你已經創建了再現您所遇到的錯誤? – 2010-02-12 12:43:22

+1

沒有庫能夠「鉤住」你的函數,而沒有一個衝突的函數名稱本身(這不可能用jQuery)。在調用暫停腳本執行的函數之前,更有可能出現錯誤。事實上,腳本中的語法錯誤意味着函數可能不存在。 – 2010-02-12 12:58:00

回答

1

在腳本的最底部的時候,你不應該被調用UpdateGlobalVariables();,不UpdateGlobalVariables;

+0

你是對的,我把()和它的工作,控制沒有去document.onready了 - 謝謝。 – 2010-02-13 10:11:02

+0

哇,你給了OP的答案,但OP仍然不明白......他在哪裏提出了onready正在接管的想法? – 2011-05-05 16:46:08