1、element.click()
2、jquery $(element).click()或者trigger()该方法只会触发onclick的方法,如a点击跳转href 需要$(a)[0].click()
3、mouseEvent
event = new MouseEvent(typeArg, mouseEventInit)
typeArg
DOMString 格式的事件名称。
mouseEventInit 可选 具体参数查考https://developer.mozilla.org/zh-CN/docs/Web/API/MouseEvent/MouseEvent
eg:event = new MouseEvent('click');document.getElementsByTagName('a').dispatchEvent(event)

4、createEvent 处理mouseEvent的兼容
tips:不要再用此方法,已过时。
使用特定的事件构造器来替代它,像 MouseEvent()。创建并发送事件 页面里有更多的使用信息。
var event = document.createEvent(type);
创建一个指定类型的事件。其返回的对象必须先初始化并可以被传递给 element.dispatchEvent。
event就是被创建的 Event 对象.type是一个字符串,表示要创建的事件类型。事件类型可能包括"UIEvents","MouseEvents","MutationEvents", 或者"HTMLEvents"。
初始化方法:
event.initMouseEvent(type, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY,
ctrlKey, altKey, shiftKey, metaKey,
button, relatedTarget);参数对一个mouseEvent中的
type
设置事件类型type 的字符串,包含以下几种鼠标事件:click,mousedown,mouseup,mouseover,mousemove,mouseout。
canBubble
是否可以冒泡。取值集合见Event.bubbles。
cancelable
是否可以阻止事件默认行为。取值集合见Event.cancelable。
view
事件的AbstractView对象引用,这里其实指向window 对象。取值集合见 UIEvent.view。
detail
事件的鼠标点击数量。取值集合见Event.detail。
screenX
事件的屏幕的x坐标。取值集合见MouseEvent.screenX。
screenY
事件的屏幕的y坐标。取值集合见MouseEvent.screenY。
clientX
事件的客户端x坐标。取值集合见MouseEvent.clientX。
clientY
事件的客户端y坐标。取值集合见MouseEvent.clientY。
ctrlKey
事件发生时 control 键是否被按下。取值集合见MouseEvent.ctrlKey。
altKey
事件发生时 alt 键是否被按下。取值集合见MouseEvent.altKey。
shiftKey
事件发生时 shift 键是否被按下。取值集合见MouseEvent.shiftKey。
metaKey
事件发生时 meta 键是否被按下。取值集合见MouseEvent.metaKey。
button
鼠标按键值 button。
relatedTarget
事件的相关对象。只在某些事件类型有用 (例如 mouseover ?和 mouseout)。其它的传null。
| 事件模块 | 传递给 createEvent的Event type | 事件初始化方法 |
|---|---|---|
| DOM Level 2 Events | ||
| User Interface event module | "UIEvents" | event.initUIEvent |
| Mouse event module | "MouseEvents" | event.initMouseEvent |
| Mutation event module | "MutationEvents" | event.initMutationEvent |
| HTML event module | "HTMLEvents" | event.initEvent |
| DOM Level 3 Events | ||
| User Interface event module | "UIEvent", "UIEvents" | event.initUIEvent |
| Mouse event module | "MouseEvent", "MouseEvents" | event.initMouseEvent |
| Mutation event module | "MutationEvent", "MutationEvents" | event.initMutationEvent |
| Mutation name event module (not implemented in Gecko as of June 2006) | "MutationNameEvent" | event.initMutationNameEvent |
| Text event module | "TextEvent" (Gecko also supports "TextEvents") | event.initTextEvent (not implemented) |
| Keyboard event module | "KeyboardEvent" (Gecko also supports "KeyEvents") | event.initKeyEvent (Gecko-specific; the DOM 3 Events working draft uses initKeyboardEvent instead) |
| Custom event module | "CustomEvent" | event.initCustomEvent |
| Basic events module | "Event" (Gecko also supports "Events") | event.initEvent |
| SVG 1.1 Scripting | ||
| SVG | "SVGEvents" (Gecko also supports "SVGEvent") | event.initEvent |
"SVGZoomEvents" (Gecko also supports "SVGZoomEvent") | event.initUIEvent | |
自定义事件
// 创建事件
var event = document.createEvent('Event');// 定义事件名为'build'.
event.initEvent('build', true, true);// 监听事件
elem.addEventListener('build', function (e) {// e.target matches elem
}, false);// 触发对象可以是任何元素或其他事件目标
elem.dispatchEvent(event);


















