JavaScript: Remover destaque atual do mouse na página?
-
10-07-2019 - |
Pergunta
Vamos dizer que eu destacar algum texto na página usando o mouse. Como posso remover todo o texto destacado usando JavaScript?
Obrigado.
Solução
Eu entendi a pergunta um pouco diferente. Eu acredito que você quer saber como excluir o texto selecionado do documento, caso em que você poderia usar:
function deleteSelection() {
if (window.getSelection) {
// Mozilla
var selection = window.getSelection();
if (selection.rangeCount > 0) {
window.getSelection().deleteFromDocument();
window.getSelection().removeAllRanges();
}
} else if (document.selection) {
// Internet Explorer
var ranges = document.selection.createRangeCollection();
for (var i = 0; i < ranges.length; i++) {
ranges[i].text = "";
}
}
}
Se você quiser apenas para limpar o próprio destaque, e não remover o texto a ser destacado, o seguinte deve fazer o truque:
function clearSelection() {
if (window.getSelection) {
window.getSelection().removeAllRanges();
} else if (document.selection) {
document.selection.empty();
}
}
Outras dicas
IE 4 e velho Netscape costumava ter um método para fazer exatamente isso ... Não é mais adequada (nem suportado).
Seu melhor palpite seria usar o Javascript para focus () em um objeto, e depois blur (), bem como -. Efetivamente como clicar fora do objeto
document.getElementById("someObject").focus();
document.getElementById("someObject").blur();
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow