使用javascript删除所选内容

使用javascript删除所选内容,javascript,jquery,Javascript,Jquery,我正在开发一个具有可拖动滚动条的图像查看器。当用户拖动滚动条时,网页上的某些文本将被选中。我试过了 window.getSelection().removeAllRanges(); 但这在IE7/8中似乎不起作用。也试过了 document.getSelection().removeAllRanges(); 这似乎和IE7/8一样“好” 还有其他的方法吗?不知道任何jQuery解决方案,但如果有,请告诉我(: 编辑:这是onmouse事件的上下文 $("#slideBar").mousedo

我正在开发一个具有可拖动滚动条的图像查看器。当用户拖动滚动条时,网页上的某些文本将被选中。我试过了

window.getSelection().removeAllRanges();
但这在IE7/8中似乎不起作用。也试过了

document.getSelection().removeAllRanges();
这似乎和IE7/8一样“好”

还有其他的方法吗?不知道任何jQuery解决方案,但如果有,请告诉我(:

编辑:这是onmouse事件的上下文

$("#slideBar").mousedown(function(f) {
    mouseDown = true;
    some more code...
}

$(document).mouseup(function() {
    if (mouseDown) {
       window.getSelection().removeAllRanges();
       more code...
    }
}
您可以添加一些CSS(使用jquery)来处理此问题:

element {
  -moz-user-select: none;
  -webkit-user-select: none;
  user-select: none;
}
无论如何,对于IE,您需要在该元素上添加专有属性(使用jquery):

unselectable="on"

尝试在您使用的函数上返回false,尤其是对于“mousedown”事件。在document.onselectstart和document.ondragstart上返回false也会有所帮助。

是否必须将属性添加到包含文本的元素中,或者是否可以添加到包含所有文本元素的父元素中?因为我似乎无法使其在IE设置中工作,在包含整个图像视图的元素上不可选择r、 根据MSDN文档,这是不可能的(无法发布链接,谷歌“MSDN不可选择”)。我对此一无所知。请尝试使用BYK的方法,它应该在IE中工作。元素的“ondragstart”上的“return false”对于IE是必不可少的,而对于其他元素,“onmousedown”也是如此。这是一种比尝试“removeAllRanges”更好的方法。