code: function fireEvent(target_object, event, event_type) {
    var on_event_type = 'on' + event_type;
  
    if (exists(target_object.dispatchEvent)) {
      // modern browsers
      target_object.dispatchEvent(event);
    } else if (exists(target_object.fireEvent)) {
      // IE9-
      target_object.fireEvent(on_event_type, event);
    } else if (exists(target_object[event_type])) {
      target_object[event_type]();
    } else if (exists(target_object[on_event_type])) {
      target_object[on_event_type]();
    }
  }
docs: Cross-browser bridge that fires an event object on target object
  @param {Object} target_object Any object that can fire an event
  @param {Event} event Event object
  @param {string} event_type Event identifier
  @private