我希望能够通过单击或使用套索来取消选择选定的项目,就像在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');


        });

    });

他展示了如何启用我们想要的功能。他还描述了他解决的一些问题。我现在将自己对他的代码进行更详尽的了解。

因此,我正在关闭这个问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top