我正在运行一小段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个级别,因此递归用于隐藏子行之前隐藏我(如果你知道我的意思)。 它可能是一个表,主要是在错误,但这是继承代码,需要一个快速修复。 感谢您的回复。 –