gpt4 book ai didi

jQuery sortable() 在 $(document).unbind ('mousemove' 之后不起作用)

转载 作者:行者123 更新时间:2023-12-01 00:14:42 29 4
gpt4 key购买 nike

jQuery Sortable() 运行良好,如果我尝试销毁并创建可排序,也运行良好。但如果尝试 $(document).unbind('mousemove') 并重新创建可排序,它只能工作一次,然后就不再工作。我知道我可以更改代码;但我想知道为什么。

这是下面的代码,也在 jsfiddle ( http://jsfiddle.net/webjjin/YJEf5/ )

<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>

<div id="container">
<ul id="sortable">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
<li>Item 5</li>
</ul>
</div>
<button id="btn">Destroy and create</button>
<button id="unbind">Unbind</button>

<script>$("#sortable").sortable();</script>
<script>
var html = $('#container').html();
$('#btn').click(function(){
$("#sortable").sortable('destroy');
$('#container').empty();
setTimeout(function(){
$('#container').append(html);

$("#sortable").sortable();
}, 500);
});
$('#unbind').click(function(){
jQuery(document).unbind('mousemove').unbind('mouseup');
})
</script>

最佳答案

使用此代码,

jQuery(document).unbind('mousemove').unbind('mouseup');

您正在删除页面上的ALL mousemovemouseup 事件监听器,这对于jQuery 可排序至关重要。它用于跟踪拖动元素悬停或放置的位置等功能。所以解除绑定(bind)会破坏整个过程。

如果您想取消绑定(bind)这些事件监听器,请使用特定的选择器:

$('#test').unbind('mousemove').unbind('mouseup');

关于jQuery sortable() 在 $(document).unbind ('mousemove' 之后不起作用),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16848910/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com