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

我有一个draggable(jQuery UI)元素,上面有“已取消”的文本。 这就是我的意思:

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

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

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

就像是:

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

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

 document.getSelection().removeAllRanges(); 

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

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