我正在尝试显示用户在使用IE时复制的内容。我使用jquery和以下代码:
$('#data').bind("copy", function(e) {alert(clipboardData.getData("text"));})
问题是每当我复制它时都显示以前复制的数据。不是当前数据显示在将数据放在剪贴板上之前调用该函数。有没有解决方法
答案 0 :(得分:1)
我认为您想要的是获取所选文本。请参阅以下代码以获取文本选择,
$('#data').bind("copy", function(e) {
var selectedText;
//reference post: https://stackoverflow.com/a/275825/297641
// IE version
if (document.selection != undefined) {
$(this).focus();
var sel = document.selection.createRange();
selectedText = sel.text;
}
// Mozilla version
else if (textComponent.selectionStart != undefined) {
var startPos = textComponent.selectionStart;
var endPos = textComponent.selectionEnd;
selectedText = textComponent.value.substring(startPos, endPos)
}
alert(selectedText);
});
<强>参考强>: How to get selected text from textbox control with javascript