Domanda

Mi piacerebbe essere in grado di deselezionare un elemento selezionato da clic o utilizzando il lazo, proprio come in Photoshop dove tengo un altro tasto fino a parti "deselezionare" di una selezione esistente.

È possibile?

A quanto ho capito "jQuery UI selezionabile". C'è solo "singolo click" con o senza CTRL per aggiungere più e poi il rapido lazo.

sto cercando di vedere come sarebbe possibile deselezionare, uno o due elementi di un intera selezione con un clic di nuovo.

Per esempio, si trascina il lazo e ottenere 30 elementi ma scopre che 1 non ha bisogno di essere parte di questa selezione. Si fa clic su di esso e deseleziona.

Quindi, qualcosa che reagisce alla selezione esistente e rimuove l'elemento prescelto.

O con il lazo, si effettua una selezione lazo. Ottiene 30 elementi. Poi si disegna un nuovo laccio, questa volta a partire su un elemento già selezionato, ora di default deseleziona e così fa il resto del gruppo marcata.

Credo che questo dovrebbe essere un comportamento personalizzabile per la jQueryUI semmai.

Ma è il "single deselezionare" possibile con un semplice trucco jQuery o si richiederà un sacco di codice?

È stato utile?

Soluzione

Sembra che posso e sarà necessario modificare selezionabile a fare da solo.

Ho trovato questo esempio da Nicolas Rudas (?): http: //nicolas.rudas. informazioni / 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');


        });

    });

Si mostra come egli ha attivato la funzione che stavamo cercando. Egli descrive anche alcuni problemi che si risolve troppo. Avrò uno sguardo più approfondito nel suo codice me stessa.

Sono quindi chiudendo a questa domanda.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top