我正在制作一个网页,我想获得突出显示的文字。问题是,当用户在页面的任何地方突出显示文本时,我想做某事。
我有这个
$("body").select( function (e) {
alert("You selected: "+window.getSelection());
});
此处https://jsfiddle.net/xn9mnmy1/
但它似乎不起作用。
我可能做错了什么?。
答案 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);
});
答案 1 :(得分:0)
使用.click()
方法,您可以将所选文本作为警报发送给用户。
在调用alert()
之前,您必须确保所选文本字符串不为空,否则每次点击任何地方都会收到提醒。
$('body').click(readText);
function readText(){
var text = window.getSelection().toString();
if(text.length > 0){
alert("You selected:\n" + text);
}
}
答案 2 :(得分:-1)
直接来自the documentation:
此活动仅限于<input type="text">
字段和<textarea>
框。