Question

Je voudrais pouvoir désélectionner un élément en cliquant ou en utilisant Lasso, comme dans Photoshop où je garde une autre touche jusqu'à quelques parties de « décochez la case » d'une sélection existante.

Est-ce possible?

Si je comprends "sélectionnable jQuery UI". Il n'y a qu'un « simple clic » avec ou sans CTRL pour ajouter plusieurs, puis le lasso rapide.

Je suis en train de voir comment il serait possible pour annuler la sélection, un ou deux éléments de toute une sélection en cliquant dessus à nouveau.

Par exemple, vous faites glisser le lasso et obtenez 30 éléments, mais constate que 1 n'a pas besoin de faire partie de cette sélection. Vous cliquez dessus et désélectionne.

Alors quelque chose qui réagit à la sélection existante et supprime l'élément choisi.

Ou avec le lasso, vous faire une sélection Lasso. Obtient 30 éléments. Ensuite, vous dessinez un nouveau lasso, cette fois à partir sur un élément déjà sélectionné, maintenant par défaut et désélectionne tout comme le reste du groupe marqué.

Je crois que cela devrait être le comportement personnalisable pour le jQueryUI si quoi que ce soit.

Mais le « deselect simple » possible avec un simple hack jQuery ou il va exiger beaucoup de code?

Était-ce utile?

La solution

Il semble que je peux et vous devrez modifier sélectionnable pour faire moi-même.

J'ai trouvé cet exemple par 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');


        });

    });

Il montre comment il a permis à la fonction que nous recherchions. Il décrit également quelques problèmes qu'il résout aussi. Je vais avoir un regard plus complet dans son code moi-même maintenant.

Je suis donc ferme cette question.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top