2010-10-01 3 views
4

J'ai plusieurs draggables sur ma page. Lorsque je commence à en glisser un, il se déplace très bien, mais les autres éléments de la page sont mis en surbrillance/sélectionnés à partir de mon curseur. J'ai remarqué que les démos de draggle sur le site Web de jquery ui semblaient fonctionner très bien. Est-ce que quelqu'un a des idées pour lesquelles le texte est sélectionné sur mon site pendant le déplacement?Comment est-ce que je peux désactiver la sélection de texte sur un draggable de jquery?

Voici le code que je utilise (me semble assez standard pour):

$ ('de dragueurs.) Draggable ( { 'aide':. 'Clone', 'revenir': vrai });

Répondre

9

Vérifiez this demo sources, par exemple:

$("#sortable").disableSelection(); 

modifier
A post du forum jquery expliquant la situation autour disableSelection. On dirait que c'est «sans-papiers» depuis longtemps déjà.

+0

Je trouve que le disableSelection() ne fait rien si j'ai: « aide »: « clone » Si je retire l'argument « d'aide », aucune sélection se produit. Quelqu'un sait comment désactiver la sélection quand il y a un assistant clone? – matt

+0

@ user463604 'helper: clone' signifie que cet élément est cloné, donc aucun descripteurs d'événements ne lui sont associés. Mais vous pouvez exécuter _disableSelection_ à nouveau une fois que l'élément est supprimé (si je comprends bien votre problème). –

5

Je sais que cet article est ancien, mais depuis que j'ai trouvé une solution possible, j'ai décidé de le poster quand même. Ajoutez simplement cette ligne à votre DIV parent (je sais, 'bind' est dépréciée me Sue..):

$('#parentdiv').bind('mousedown', function(event) { event.preventDefault() }); 

sélections ne se produisent pas parce que les événements de mousedown ne sont jamais terminés. J'ai testé cela avec DIV multiples et cela semble fonctionner!

Questions connexes