2

既存の選択範囲の一部を「選択解除」するために別のキーを押したままにする Photoshop のように、クリックまたはなげなわを使用して選択した項目の選択を解除できるようにしたいと考えています。

これは可能ですか?

私が理解しているように、「jQuery UIが選択可能」です。複数を追加してからクイックなげなわを追加するには、CTRLの有無にかかわらず「シングルクリック」のみがあります。

もう一度クリックして、選択全体の1つまたは2つの要素を選択解除する方法を確認しようとしています。

たとえば、なげなわをドラッグして 30 個の要素を取得しましたが、1 つがこの選択の一部である必要がないことがわかりました。クリックして選択を解除します。

したがって、既存の選択に反応し、選択された要素を削除するもの。

またはなげなわで、なげなわ選択を行います。30 個の要素を取得します。次に、新しいなげなわを描画します。今回は、既に選択されている要素から開始します。デフォルトで選択が解除され、マークされたグループの残りの部分も解除されます。

どちらかといえば、これは jQueryUI のカスタマイズ可能な動作であるべきだと思います。

しかし、単純なjQueryハックで「単一の選択解除」が可能ですか、それとも多くのコードが必要ですか?

4

1 に答える 1

0

これを自分で行うには、 Selectable を変更することができ、変更する必要があるようです。

Nicolas Rudas (?) によるこの例を見つけました: 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');


        });

    });

彼は、私たちが探していた機能をどのように有効にしたかを示しています。彼はまた、彼が解決するいくつかの問題についても説明しています。私は今、彼のコードをより徹底的に調べます。

したがって、この質問を閉じます。

于 2010-06-02T00:24:06.277 に答える