美好的一天!jQuery UI .draggable()
只是有一个问题,如果你们中有人遇到我的问题。 问题是我想让动态创建的div元素可以拖动。是的,可以通过$('.frameHolder').draggable()
来实现。但问题是,当div达到一千时,它导致浏览器变得非常慢(如800毫秒 - 通过performance.now()来衡量)。
这里的片段:
var frames = [];
for (var i = 1; i <= 100; i++) {
frames.push('<div id="frame' + i + '" class="frame"><div id="frameHolder' + i + '" class="frameHolder"></div></div>');
}
$('.frameHolder').draggable({
containment: $('#layerFrameContainer .layerFrame),
axis: 'x',
cursor: 'pointer',
helper: 'clone',
grid: [10, 10]
});
谢谢你们!
最简单的解决方法是不要在页面中放入1000个div。如果可能,请使用分页。如果这是不可能的,那么你唯一的选择是优化JS代码。我建议不要使用jQuery。 –
@RoryMcCrossan对此无法进行分页。哦,好吧,我需要找到其他方式。谢啦! – kamp
所有'div'都需要在任何时候拖动吗?也许只需要一次拖动一个特定元素,就像它具有焦点一样。这里的最终目标是什么,你想要做的有点模糊。 – Twisty