Понимание JavaScript originalEvent

Может кто-нибудь помочь мне понять использование originalEvent в JavaScript? Я действительно не могу найти хороший источник документации об этом.

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

Недавно у меня возник вопрос в SO, и парень ответил на это, добавив эту строку кода

$("#url").bind('paste', function(e) {
    var val = e.originalEvent.clipboardData.getData('text/plain');
 ....

к моему существующему коду, который работал с BTT.

Я был бы очень признателен, если кто-то может помочь мне понять его использование.

Ответ 1

Вы используете библиотеку JavaScript, называемую jQuery, откуда приходит функция $(). jQuery обертывает несколько частей JavaScript, чтобы упростить его использование. Одна из этих частей - обработка событий. В вашем примере, поскольку вы используете jQuery для привязки к событию вставки, объект, переданный вашему обратному вызову (e), представляет собой объект события jQuery, а не встроенный объект события JavaScript. Объект события jQuery предоставляет свойство originalEvent для доступа к основному встроенному объекту события.

В вашем примере вам нужно получить данные буфера обмена, которые недоступны через объект события jQuery, поэтому вам нужно получить доступ к исходному объекту события, чтобы получить его.

Ответ 2

Некоторые события могут иметь свойства, специфичные для них.     К ним можно обращаться как к свойствам объекта event.originalEvent.

Источник: объект события jQuery

В вашем примере свойство clipboardData paste событие доступно через event.originalEvent.

Ответ 3

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

"Также важно отметить, что объект события содержит свойство originalEvent, которое является объектом события, созданным самим браузером. jQuery обертывает этот собственный объект события некоторыми полезными методами и свойствами, но в некоторых случаях, Вам нужно будет получить доступ к исходному событию через event.originalEvent, например, это особенно полезно для сенсорных событий на мобильных устройствах и планшетах.