Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery拖放速度减慢,以获得更多DIV项_Jquery_Performance_Jquery Ui_Drag And Drop - Fatal编程技术网

jQuery拖放速度减慢,以获得更多DIV项

jQuery拖放速度减慢,以获得更多DIV项,jquery,performance,jquery-ui,drag-and-drop,Jquery,Performance,Jquery Ui,Drag And Drop,我在我的页面中有一个层次标记(带有父子关系),它将占500-4500(甚至可以增长)。当我绑定可拖放和可拖放时,我发现IE7和IE6的性能非常差。自定义助手移动不平稳,速度非常慢。基于其他一些帖子,我已经在mouseover和mouseout事件上(动态地)绑定/取消绑定了dropable。现在好多了 但是我仍然看不到自定义辅助对象的移动非常平稳。当鼠标光标和辅助对象移动时,它们之间有一个间隙,当我从远程访问站点时,情况变得非常糟糕 请帮助我解决这个性能问题。我完全被困在这里了(在任何给定时刻尝

我在我的页面中有一个层次标记(带有父子关系),它将占500-4500(甚至可以增长)。当我绑定可拖放和可拖放时,我发现IE7和IE6的性能非常差。自定义助手移动不平稳,速度非常慢。基于其他一些帖子,我已经在mouseover和mouseout事件上(动态地)绑定/取消绑定了dropable。现在好多了

但是我仍然看不到自定义辅助对象的移动非常平稳。当鼠标光标和辅助对象移动时,它们之间有一个间隙,当我从远程访问站点时,情况变得非常糟糕


请帮助我解决这个性能问题。我完全被困在这里了(

在任何给定时刻尝试减少可拖放的数量。没有其他方法


一种策略是将放置目标合并到由div绑定的组中,并仅在鼠标进入父div时将该div的子对象绑定为可放置对象,并在鼠标离开时取消注册。

我以前也遇到过类似问题(不是可放置div,而是太多div会影响性能)。对我们来说,解决方案是在div从屏幕上滚动时重复使用div,因为如果您只看到当前视图中的div,再加上几个可以上下滚动的div,您就不会有那么多的div。当然,这对我们来说更容易一些,因为它是使用遥控器控制的,一次只能移动一个屏幕,并且不需要拍摄考虑到单击滚动条上的随机位置,但它可能仍然对您有用。如果上面的解释不够清楚,它的工作原理如下:

|  [spare divs]
| -----------------
|  [buffered divs for page-up]
| -----------------
|  [divs currently on screen]
| -----------------
|  [buffered divs for page-down]
| -----------------
|  [spare divs]
| -----------------

现在,无论何时滚动,都要用所需的数据填充页面上的所有div,然后整理缓冲区,将任何其他div留空。在您的情况下,与其更改数据,还可以通过切换droppable on/off来解决问题。

您指的是什么?发布一些代码以便我们提供帮助。顺便说一句,远程问题应该是关于你的网络延迟。我不认为优化javascript有什么帮助。嗨,Chetan,是的,我按照问题552951的解决方案做了。获得了一些改进。但是当jquery在浏览器上执行时,网络延迟有什么关系。我测试了一个大约100个div的示例,它是平滑的。但是我添加了更多示例,比如500+它s开始变慢了..还有其他方法解决这个问题吗?我以为你在使用远程桌面。