JS的Selection选区(拖蓝)在页面失去焦点后会变灰,如何回蓝?

新手上路,请多包涵

这是页面有焦点的情况下,文字选区变蓝

这是页面失去焦点后,文字选区变灰

如何通过JS代码,让选区重新变回蓝色呢?

阅读 2.2k
1 个回答

其实就是web中的选区问题,可以参考这篇文章 https://segmentfault.com/a/11...

下面是还原选区的操作

let lastRange = null;
txt.onkeyup = function (e) {
    var selection = document.getSelection()
    // 保存最后的range对象
    lastRange = selection.getRangeAt(0)
}
btn.onclick = () => {
  const selection = document.getSelection();
  selection.removeAllRanges();
  // 还原上次的选区
  selection.addRange(lastRange);
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题