在jQuery中如何处理粘贴操作?

5
1个回答

12

现代浏览器提供了一个可用的onpaste事件:

$("#textareaid").bind("paste", function(){});

事件存在问题,它告诉你即将发生的事情,但是它没有提供用户粘贴内容的信息。JavaScript对剪贴板的访问受到限制,默认情况下被禁用。如果启用了访问权限,您可以读取剪贴板数据并进行操作。


e.target.value 不是给你用户正在粘贴的内容吗? - jobmo
@jobmo 这个问题已经有6年了,现在有一些变化。你可以使用event.clipboardData获取剪贴板中的内容。读取这个值将会得到整个文本域的内容。 - epascarello
e.target.value 不一定包含值。你可能需要使用 setTimeout。https://dev59.com/-3RB5IYBdhLWcg3wN08P#1503425 - Bernhard Döbler
在IE11中不存在event.clipboardData - Bernhard Döbler

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接