JavaScript:現在のマウスのハイライトをページから削除しますか?
-
10-07-2019 - |
質問
マウスを使用してページ上のテキストをハイライトするとしましょう。 JavaScriptを使用して、強調表示されたテキストをすべて削除するにはどうすればよいですか?
ありがとう。
解決
この質問の理解は少し異なりました。ドキュメントから選択したテキストを削除する方法を知りたいと思うと思います。その場合、次のように使用できます。
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();
}
}
他のヒント
IE 4および古いNetscapeにはこれを行う方法がありました...これはもはや適切ではありません(サポートされていません)。
最良の推測は、Javascriptを使用してオブジェクトにfocus()し、次にblur()することです。これは、オブジェクトから離れてクリックするのと同じように効果的です。
document.getElementById("someObject").focus();
document.getElementById("someObject").blur();
所属していません StackOverflow