26 lines
585 B
JavaScript
26 lines
585 B
JavaScript
var isStr = require('./isStr');
|
|
var defaults = require('./defaults');
|
|
var extend = require('./extend');
|
|
|
|
exports = function(el, type, opts) {
|
|
if (isStr(el)) {
|
|
opts = type;
|
|
type = el;
|
|
el = document;
|
|
}
|
|
opts = opts || {};
|
|
defaults(opts, defOpts);
|
|
var event = document.createEvent('Event');
|
|
event.initEvent(type, opts.bubbles, opts.cancelable);
|
|
delete opts.bubbles;
|
|
delete opts.cancelable;
|
|
extend(event, opts);
|
|
el.dispatchEvent(event);
|
|
};
|
|
var defOpts = {
|
|
bubbles: true,
|
|
cancelable: true
|
|
};
|
|
|
|
module.exports = exports;
|