📜  avascript-how-to-detect-if-a-word-is-highlighted - Javascript (1)

📅  最后修改于: 2023-12-03 15:13:33.871000             🧑  作者: Mango

Javascript: 如何检测一个单词是否被高亮选中了

在web开发中,经常需要获取用户在页面上的选择,包括文本、图片、链接等。但是如何检测一个单词是否被高亮选中了呢?下面本文将为你介绍两种常见的实现方式。

方法1:使用window.getSelection()
function isWordHighlighted(word) {
  var selection = window.getSelection().toString();
  if (selection.indexOf(word) !== -1) {
    return true;
  } else {
    return false;
  }
}

这段代码使用window.getSelection()获取当前页面中的选中区域,然后使用indexOf()方法查找单词是否在选中文本中。如果在,则返回true,否则返回false。

方法2:使用document.selection.createRange()
function isWordHighlighted(word) {
  var selection = document.selection.createRange().text;
  if (selection.indexOf(word) !== -1) {
    return true;
  } else {
    return false;
  }
}

这段代码使用document.selection.createRange()获取当前页面中的选中区域,然后使用indexOf()方法查找单词是否在选中文本中。如果在,则返回true,否则返回false。需要注意的是,这种方式只能在基于IE浏览器的web应用中使用。

以上两种方法都是检测一个单词是否被高亮选中了的常见实现方式,如果您有其他更好的实现方式,欢迎在评论区留言分享。