jQuery可选 - 单击通过单击 - 取消选择单元素 - 这可能吗?
-
05-10-2019 - |
题
我希望能够通过单击或使用套索来取消选择选定的项目,就像在Photoshop中一样,我将另一个钥匙放在现有选择的“取消选择”部分。
这可能吗?
据我了解“ JQuery UI可选”。有或没有CTRL的“单击”只能添加多个,然后是快速拉索。
我试图看看如何取消选择,这是通过再次单击整体选择的一个或两个元素。
例如,您将套索拖动并获得30个元素,但发现1不需要成为此选择的一部分。您单击它并取消选择。
因此,对现有选择的反应并删除了选择的元素。
或使用套索,您可以选择套索。获得30个元素。然后,您绘制一个新的套索,这次从已经选择的元素开始,现在默认取消选择,其余的组都标记了。
我相信,如果有的话,这应该是可定制的行为。
但是,是否可以使用简单的jQuery hack进行“单一取消选择”,还是需要大量代码?
解决方案
看来我可以并且需要修改可选的才能自己执行此操作。
我发现了尼古拉斯·鲁达斯(?)的示例: http://nicolas.rudas.info/jquery/selectables_sortables/
$(function() {
$("#selectable")
.selectable({
autoRefresh: false,
stop: function(e,ui){
$(this).selectable( 'refresh');
},
noConflict : false
})
.sortable({
opacity:'0.5',
cursor: 'move',
zIndex: 5,
helper : 'clone',
forcePlaceholderSize : true,
stop : function(){
$("#selectable").selectable( 'refresh');
}
})
$('#noConflict').toggle(function() {
$(this).text('Disable \'noCoflict\'');
$("#selectable").selectable('option','noConflict',true).selectable( 'refresh');
},
function() {
$(this).text('Enable \'noCoflict\'');
$("#selectable").selectable('option','noConflict',false).selectable( 'refresh');
});
});
他展示了如何启用我们想要的功能。他还描述了他解决的一些问题。我现在将自己对他的代码进行更详尽的了解。
因此,我正在关闭这个问题。
不隶属于 StackOverflow