javascript 能不能获取当前选中的文字

2024-11-17 08:35:31
推荐回答(1个)
回答(1):

获取选中的普通页面上的文字,可以用下面的方法:

function getSelectedText() {
    if (window.getSelection) {
        // This technique is the most likely to be standardized.
        // getSelection() returns a Selection object, which we do not document.
        return window.getSelection().toString();
    }
    else if (document.getSelection) {
        // This is an older, simpler technique that returns a string
        return document.getSelection();
    }
    else if (document.selection) {
        // This is the IE-specific technique.
        // We do not document the IE selection property or TextRange objects.
        return document.selection.createRange().text;
    }
}


在 FireFox 下获取 input 或者 textarea 中选中的文字,可以用下面的方法:

function getTextFieldSelection(e) {
    if (e.selectionStart != undefined && e.selectionEnd != undefined) {
        var start = e.selectionStart;
        var end = e.selectionEnd;
        return e.value.substring(start, end);
    }
    else return "";  // Not supported on this browser
}