2013-02-13 3 views
2

Я пытаюсь имитировать Ctrl + V в javascript. Я использую firefox в Linux. Что я делаю:Имитировать ctrl + v event на javascript

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

Кто-нибудь знает, почему это не работает?

Thanks

+4

По соображениям безопасности? Вы не можете просто прочитать буфер обмена без разрешения пользователя. –

+0

Вы нашли решение для этого? –

+0

@JanDvorak, как пользователь может это сделать? – Lucas

ответ

5

Копирование и вставка и сам клип очень защищены. Если нет явного пользовательского действия, он не будет работать с симуляциями. Если вы создаете скрипт, который имитирует пасту внутри входного поля, то отправляйте ее на свой сервер, вы можете получить некоторую действительно личную информацию из буферов обмена людьми. Итак ... нет, это не сработает, насколько мне известно. Я бы хотел, чтобы вы или кто-то другой доказали, что я ошибаюсь и разделяю решение.

Но расскажите, что вы планируете делать, и, возможно, есть обходное решение, которое не связано с этим симулированным действием.

+1

Я не думаю, что это проблема безопасности, потому что она работает в Windows. Что я хочу сделать, это вырезать текст и вставить его в другое место. Имитировать ctrl + a и ctrl + x отлично, но ctrl + v нет. – user2069499

+0

@TheBrain Я пытаюсь создать опцию контекстного меню буфера обмена. Когда пользователь нажимает на одно из подменю, он вставляет связанный текст во все текстовые поля/страницы. – Abdul

Смежные вопросы