À quoi sert disableSelection dans l'interface utilisateur jQuery?

86

Quelqu'un peut-il m'aider à comprendre pourquoi est-ce utile et quand l'utiliser?

$( "#sortable" ).disableSelection();
Nikola
la source

Réponses:

104

C'est utile si vous souhaitez rendre le texte non sélectionnable. Si, par exemple, vous souhaitez créer des éléments par glisser-déposer avec du texte activé, il serait ennuyeux pour l'utilisateur si le texte de la boîte était accidentellement sélectionné en essayant de faire glisser la boîte.

kba
la source
1
Je suis d'accord! Alors, pourquoi ont-ils déprécié disableSelection ()?
Scott Stafford
5
@ScottStafford Parce qu'en général, la désactivation de la sélection est mauvaise pour l'expérience de l'interface utilisateur. Avec jQuery, la sélection est toujours automatiquement désactivé lors de l' utilisation Draggable et triables . En outre, le même effet peut maintenant être réalisé en utilisant CSS: user-select: none. Consultez cet article sur la sélection par l'utilisateur sur Mozilla Developer Network .
kba
8

Caveat emptor: .disableSelection()est en fait nocif sur certains navigateurs, car il empêche de cliquer sur les éléments actifs (par exemple textareas) à l'intérieur du triable.

  • Firefox 33.1 pour Mac OS X (Yosemite): .disableSelection()empêche de cliquer sur intégré textarea; ne semble pas avoir d'effet autrement (c'est-à-dire qu'il est toujours impossible de sélectionner du texte avec la souris dans le triable s'il est omis)
  • Chrome 39.0.2171.71 (64 bits) pour Mac OS X: .disableSelection()semble n'avoir aucun effet.
DomQ
la source