#javascript #select #highlight
#javascript #выберите #выделение
Вопрос:
Допустим, я выделяю некоторый текст на странице с помощью мыши. Как я могу удалить весь выделенный текст с помощью JavaScript?
Спасибо.
Ответ №1:
Я понял вопрос немного по-другому. Я полагаю, вы хотите знать, как удалить выделенный текст из документа, и в этом случае вы могли бы использовать:
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 = "";
}
}
}
Если вы просто хотите убрать саму подсветку, а не удалять выделяемый текст, то для этого должно сработать следующее:
function clearSelection() {
if (window.getSelection) {
window.getSelection().removeAllRanges();
} else if (document.selection) {
document.selection.empty();
}
}
Комментарии:
1. На самом деле я хочу удалить саму отображаемую подсветку.
Ответ №2:
В IE 4 и старом Netscape раньше был способ сделать именно это… Это больше не подходит (и не поддерживается).
Лучшим предположением было бы использовать Javascript для фокусировки () на объекте, а затем также размытие () — эффективно, как щелчок в сторону от объекта.
document.getElementById("someObject").focus();
document.getElementById("someObject").blur();