Просто хотел предоставить больше информации об этом - потому что это раздражает.
Во-первых, firefox не позволяет получать содержимое буфера обмена при вставке (хотя он поддерживает получение данных буфера обмена вообще - например,при перетаскивании).
Я начал с типичного предположения, верно?Webkit позволяет это при вставке:
event.clipboardData.getData('text/plain')
Так что можно ожидать, что Firefox также может.Не правда!
Однако есть способ выполнить то же самое, и именно это заставляет меня верить, что это глупое и устаревшее ограничение.Я имею в виду, если я могу получить вставленный контент в любом случае, зачем беспокоиться об ограничении?И если пользователь вставляет элемент, к которому у меня есть доступ, отлично, у меня должен быть доступ к этому вставленному контенту, если я вообще знаю о событии - я имею в виду, зачем это событие, если вы не можете попасть навставляемый контент?
Итак, вот решение для других - оно было отправлено в мой проект, и с течением времени его немного перенесли.Он использует jQuery.
onPaste:
var hijacker = $('<div contenteditable="true" style="visibility:hidden"/>');
hijacker.appendTo(document.body).focus();
setTimeout(function() {
console.debug(hijacker.html());
hijacker.remove();
}, 1);
В тот момент, когда вы можете console.debug html элемента угонщика, вы можете делать с ним все, что вам нужно.Что дает Firefox?Прошло уже несколько лет - просто предоставьте ему clipboardData, чтобы мне не нужно было добавлять хакерский код, подобный этому.