我正在運行一小段javascript,它顯示/隱藏大約170個錶行。在IE9中,這是間歇性地導致瀏覽器「停止響應」並死亡。我收到對話,說「Internet Explorer已停止工作......」。Internet Explorer停止響應
在Chrome中,它很好。該操作大約需要1秒才能完成(並且在IE中運行需要1-2秒)。
所有我做的是調用此行,在遞歸函數,170次(ID是唯一標識每個表TR行的GUID):
$("#" + id).css("display", "block");
如果我在我的代碼引入超時顯示行之間爲1毫秒,它每次都有效!
setTimeout(function() { $("#" + id).css("display", "block"); }, 1);
也試過jquery show方法。
我也是在事件日誌中得到一個錯誤如下:
錯誤應用程序名稱:IEXPLORE.EXE,版本:9.0.8112.16448,時間戳:0x4fecf1b7 錯誤模塊名稱:MSHTML.DLL,版本:9.0 .8112.16448,時間戳:0x4fecfb0e 異常代碼:0000005 故障偏移:0x002cd4e6 出錯進程ID:0x1764 錯誤應用程序啓動時間:0x01cd9725ec072ed0 錯誤的應用程序路徑:C:\ Program Files文件(x86)的\的Internet Explorer \ IEXPLORE.EXE 錯誤模塊路徑:C:\ Windows \ system32 \ MSHTML.dll 報告ID:721 d0e53-03c5-11e2-98c9-005056c00008
在執行重複性任務時是否有其他人遇到過這種行爲?
遞歸函數是必需的,因爲我有一個包含1000+行的表格,它們以父/子分組格式進行佈局。有4個級別,因此遞歸用於隱藏子行之前隱藏我(如果你知道我的意思)。 它可能是一個表,主要是在錯誤,但這是繼承代碼,需要一個快速修復。 感謝您的回覆。 –