使用select时定位整个身体

时间:2016-05-05 21:46:12

标签: jquery

我正在制作一个网页,我想获得突出显示的文字。问题是,当用户在页面的任何地方突出显示文本时,我想做某事。

我有这个

$("body").select( function (e) { 
        alert("You selected: "+window.getSelection());
    });

此处https://jsfiddle.net/xn9mnmy1/

但它似乎不起作用。

我可能做错了什么?。

3 个答案:

答案 0 :(得分:0)

$('body').on('click', function(){

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

    alert(text);       
});

来源:Can I get highlighted text with JQuery?

答案 1 :(得分:0)

使用.click()方法,您可以将所选文本作为警报发送给用户。

在调用alert()之前,您必须确保所选文本字符串不为空,否则每次点击任何地方都会收到提醒。

$('body').click(readText);

function readText(){
    var text = window.getSelection().toString();
    if(text.length > 0){
            alert("You selected:\n" + text);
        }  
}

请参阅:https://jsfiddle.net/r24b0dpv/

答案 2 :(得分:-1)

直接来自the documentation

此活动仅限于<input type="text">字段和<textarea>框。