2013-02-13 757 views
2

我尽量模拟按Ctrl +V在JavaScript。我在Linux中使用firefox。我所做的是:模拟CTRL + V事件上的JavaScript

var pressEvent = document.createEvent ("KeyboardEvent");  
pressEvent.initKeyEvent ("keypress", true, true, window, true, false, false, false, 86, 0); 
var accepted=aTarget.dispatchEvent (pressEvent); 

有人知道为什么它不起作用?

谢谢

+4

安全原因?你不能只在没有用户让你的情况下阅读剪贴板。 – 2013-02-13 18:31:32

+0

你找到了这个解决方案吗? – 2015-01-16 19:52:29

+0

@JanDvorak用户如何让你做到这一点? – Lucas 2017-04-26 14:44:46

回答

5

复制和粘贴和clipboard本身都非常保护。除非有明确的用户操作,否则它不适用于模拟。如果您在输入框中创建了一个模拟粘贴的脚本,然后将其提交给您的服务器,那么您可能会从剪贴板中获得一些真正的私人信息。所以......不,这对我不了解。我会喜欢你或其他人来证明我错了,并分享解决方案。

但是请告诉你打算做什么,也许有一个解决方法,它不涉及此模拟操作。

+1

我不认为这会是一个安全问题,因为它在Windows中工作..我想要做的是剪下一些文本,并将其粘贴到其他地方。模拟ctrl + a和ctrl + x工作正常,但ctrl + v不是。 – user2069499 2013-02-14 09:58:45

+0

@TheBrain我试图创建剪贴板上下文菜单选项。当用户点击其中一个子菜单时,它会将关联的文本粘贴到任何文本框/页面处于活动状态。 – Abdul 2016-01-13 01:34:13