优化jQuery UI拖放计划网格

时间:2012-06-20 19:13:42

标签: jquery jquery-ui drag-and-drop draggable droppable

我有一个基于HTML表格的计划网格,使用jQuery / jQuery UI拖放。表中的每个单元代表一个用户和时间段。我在IE9,FireFox和Chrome中都有很好的表现,但是IE8无法使用,因为用户开始拖动和拖动帮助器出现的时间之间有几秒钟的停顿。

我知道问题的一部分是我正在创建大量的droppables,在这种情况下:

112个24小时网格用户(共创建了2688个可投放的广告)

如果我删除使空2688单元格可丢的代码,速度会显着增加,但IE8中的动画仍然感觉迟钝。

对于加快这项工作有哪些建议?我已经考虑过让表本身成为droppable,但是我不确定如何计算掉哪个单元格,并且我会丢失指示活动单元格的hoverState CSS背景。

一个关键要求是我坚持使用HTML表,因为它是如何绑定在服务器上的。

我是否正在与IE8作战?我真的很想在浏览器中尽快做到这一点。

1 个答案:

答案 0 :(得分:1)

我尝试绑定到mouseover事件,并且实际上不会初始化任何droppable(或元素上交互所需的其他参数),直到鼠标实际上在元素上。通过这条路线,我在高度互动的页面上将性能提高了大约400%。

如果这没有帮助,请考虑使用dynaTrace ajax版本进行测试,该版本会显示javascript中慢点的位置。