platform/video.videojs/dist/video.es.js
function listen(target, method, type, listener) {
  validateTarget(target);

  if (target.nodeName) {
    Events[method](target, type, listener);
  } else {
    target[method](type, listener);
  }
}
function listen(target, method, type, listener) {
  validateTarget(target);

  if (target.nodeName) {
    Events[method](target, type, listener);
  } else {
    target[method](type, listener);
  }
}
Adds the listener to the event type(s) on the target, normalizing for
the type of target.

@private
@param  {Element|Object} target
A DOM node or evented object.

@param  {string} method
The event binding method to use ("on" or "one").

@param  {string|Array} type
One or more event type(s).

@param  {Function} listener
A listener function.