Задать вопрос

Как вставить текст из буфера в JavaScript?

Нужно добраться до содержимого буфера (текст) и вставить в переменную в JS. Если с ИЕ всё понятно, то как быть с остальными браузерами?

Суть в том что основное приложение написано на GWT и комбинацию клавиш сначала именно оно и обрабатывает. Так что несмотря на то что в document уже висит eventListenerна 'paste' - именно браузерный paste не срабатывает. Из GWT приходит лишь KeyboardEvent. Я могу в нём создать и вызвать пэйст ивент типа

var pasteEvent = $doc.createEvent ("Event");
pasteEvent.initEvent ('paste', true, false);
$doc.dispatchEvent (pasteEvent);


, но у него пустое значение clipboardData, которое используется в лисенере, о котором я писал выше, для получения содержимого буфера (код) :
$doc.addEventListener('paste', function(e) {
                 var clipboardData = e.clipboardData;
               console.log('Clipboard Plain Text: ' + 
clipboardData.getData('text/plain'));   });
  • Вопрос задан
  • 5101 просмотр
Подписаться 1 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 3
Средствами js этого не сделать - это небезопасное действие, у вас в буфере могут лежать пароли, никто не должен втихаря их читать.

А вообще, все уже давно написано у вас проблемы с гуглом? stackoverflow.com/questions/400212/how-do-i-copy-t...
Ответ написан
Firehanded
@Firehanded Автор вопроса
Вопрос закрыт. Причиной оказался keyDownEvent.preventDefault(); в хэндлере комбинации клавиш со стороны GWT.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы