有没有一个函数来取消所有使用JavaScript的文本?
JavaScript中有一个函数只是取消select所有选定的文本? 我认为这应该是一个简单的全局函数,如document.body.deselectAll();
或者其他的东西。
尝试这个:
function clearSelection() { if ( document.selection ) { document.selection.empty(); } else if ( window.getSelection ) { window.getSelection().removeAllRanges(); } }
这将清除任何主要浏览器中常规HTML内容的select。 它不会清除Firefox中的文本input或<textarea>
中的select。
这是一个版本,将清除任何select,包括文本input和textareas:
演示: http : //jsfiddle.net/SLQpM/23/
function clearSelection() { var sel; if ( (sel = document.selection) && sel.empty ) { sel.empty(); } else { if (window.getSelection) { window.getSelection().removeAllRanges(); } var activeEl = document.activeElement; if (activeEl) { var tagName = activeEl.nodeName.toLowerCase(); if ( tagName == "textarea" || (tagName == "input" && activeEl.type == "text") ) { // Collapse the selection to the end activeEl.selectionStart = activeEl.selectionEnd; } } } }
对于Internet Explorer,您可以使用document.selection对象的空方法 :
document.selection.empty();
对于跨浏览器的解决scheme,请参阅此答案:
清除Firefox中的select