我有一个典型的 Ext Js 风格窗口,带有左侧导航、标题和用于显示内容的中心区域。
左侧导航有一堆菜单项,单击这些菜单项时,可以通过 Panel.Load() 方法从指定的 url 将某些内容加载到中央面板中。
我的问题是,在 IE 中,如果我太快地单击许多菜单项,我会收到各种 javascript 错误,我相信 dom 元素正试图被访问,但由于更新程序正在更新 html 的过程中,这些元素已不再存在。
有没有人遇到过这个问题,或者是否有办法在新的加载请求开始后停止 JavaScript 的执行。
我尝试过使用这个:
if(Ext.isIE) {
window.document.execCommand('Stop');
}
else {
window.stop();
}
提前致谢!
最佳答案
处理过快点击的常见解决方案是 buffer加载面板的点击处理代码,以便仅在指定时间段内未发生另一次点击时才运行。像这样的东西:
item.on('click', function(){ ... }, this, {buffer:50});
关于javascript - Ext Js Javascript 执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1945218/