2013-11-23 52 views
1

我试图清除页面上可能处于活动状态的任何文本选择,包括文本框中的选定文本。这适用于Firefox和Chrome:使用JavaScript在IE11中清除文本框选择

document.getSelection().removeAllRanges(); 

它也适用于IE中在页面上选择的文本,但不在文本框中选择文本。

我做的IE浏览器,这工作了两种类型的选择以下,但它在IE11不再支持:

document.selection.empty(); 

任何想法?

回答

3

想通了。调用removeAllRanges()以取消选择页面上的任何选定文本,然后添加一个新的空选择以取消选择文本框中的任何选定文本。这涵盖了所有三种浏览器的所有基础:

document.getSelection().removeAllRanges(); 
document.getSelection().addRange(document.createRange()); 
+0

第二行对于IE浏览器是绝对必需的。你是唯一一个正在考虑这个问题的人(在我最近两天的冲浪中)。即使对于最新的IE(边缘也是如此)没有这个在每种情况下都没有明确的选择。所有的IE版本(8,9,10,11,边缘)都需要这个。 –

相关问题