我使用 1.4.1 jQuery 将可排序的 jQuery 插件附加到我的 div 列表中。页面加载时调用的函数非常简单。
$(function()
{
$('#divEditFieldOrderModal_FieldList').sortable(
{
axis: 'y',
cursor: 'pointer',
placeholder: 'sortOrderPlaceholder'
});
});
这个divEditFieldOrderModal_FieldList包含大约20个项目,每个div里面都有一个小文本字符串,没什么特别的。 在 FF 或 Chrome 中运行此页面,我发现一切都运行顺利,没有任何问题。但是当我在 IE8 中尝试同样的事情(没有兼容模式)时,一切都变得如此缓慢,以至于鼠标几乎无法移动。
当尝试使用嵌入式分析器分析 JS 时,我发现名为“数据”的函数包含“独占时间”列中的最大值。 我分析了大约 2 秒,将一项从列表底部移动到顶部。
data Count:5 399 Exclusive time:124,00
顺便说一句,我在 IE8 中测试了可排序插件官方示例,一切都运行快速且完美。当然,我的页面比示例更多地加载了控件和表格......
也许有人知道什么会导致 IE8 中出现此问题,我该怎么办?
P.S.:在IE7兼容模式下运行流畅。
最佳答案
如果它在 IE7 中工作正常,并且您正在开发以支持 IE7,那么为什么不强制使用 HTTP header or Meta Tag 的 IE7 兼容模式呢? ?诚然这是一种“回避”策略,但就我个人而言,如果不需要的话为什么要浪费时间呢?
也就是说,获得诊断会很有趣。你能发布你的代码吗?
关于javascript - jQuery 在 IE8 中排序非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2163437/