如何使用Javascript或jQuery取消选择文本?

时间:2011-12-30 22:38:56

标签: javascript jquery jquery-ui

我有一个可拖动的(jQuery UI)元素"取消"文字就可以了。这就是我的意思:

$('#main').draggable({
        cancel: '#main>* *',
        start: function(){
          // deselect text
        }
});

当我拖动元素时,我经常偶然选择文本。我想在拖动元素时取消选择文本。

3 个答案:

答案 0 :(得分:79)

取消选择您可以使用的所有内容:

document.getSelection().removeAllRanges();

答案 1 :(得分:0)

jQuery UI现在包含.disableSelection(),您可以使用它来阻止选择元素中的文本。关于它的API文档并不是非常有用,但是:http://api.jqueryui.com/disableSelection/

顺便说一句,Eric G的答案在创建我自己的“文本突出显示”工具时证明对我非常有帮助 - 正如Lawrence所说,如果没有选择任何文本,它不会抛出错误。

答案 2 :(得分:-8)

清除文件选择document.selection.empty();

类似的东西:

 $('#main').draggable({
     cancel: '#main>* *',
     start: function(){
      // deselect text
      document.selection.empty();
     }
 });