首頁 >web前端 >js教程 >如何使用 JavaScript 從網站取得使用者選擇的文字?

如何使用 JavaScript 從網站取得使用者選擇的文字?

Linda Hamilton
Linda Hamilton原創
2024-12-13 06:36:14483瀏覽

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