首页 >web前端 >js教程 >如何使用 JavaScript 从网站获取用户选择的文本?

如何使用 JavaScript 从网站获取用户选择的文本?

Linda Hamilton
Linda Hamilton原创
2024-12-13 06:36:14482浏览

How Can I Get User-Selected Text from a Website Using JavaScript?

获取突出显示/选定的文本

是否可以使用 jQuery 获取网站内用户突出显示或选择的文本?

答案:

获取用户选择的文本很简单。使用 jQuery 没有任何优势,因为它可以使用窗口和文档对象来完成。

function getSelectionText() {
    let text = "";

    if (window.getSelection) {
        text = window.getSelection().toString();
    } else if (document.selection && document.selection.type != "Control") {
        text = document.selection.createRange().text;
    }

    return text;
}

或者,如果您希望考虑在

function getSelectionText() {
    let text = "";
    const activeEl = document.activeElement;
    const activeElTagName = activeEl ? activeEl.tagName.toLowerCase() : null;

    if (
      (activeElTagName == "textarea") || (activeElTagName == "input" &&
      /^(?:text|search|password|tel|url)$/i.test(activeEl.type)) &&
      (typeof activeEl.selectionStart == "number")
    ) {
        text = activeEl.value.slice(activeEl.selectionStart, activeEl.selectionEnd);
    } else if (window.getSelection) {
        text = window.getSelection().toString();
    }

    return text;
}

document.onmouseup = document.onkeyup = document.onselectionchange = function() {
  document.getElementById("sel").value = getSelectionText();
};

以上是如何使用 JavaScript 从网站获取用户选择的文本?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn