已废弃
该特性已经从 Web 标准中删除,虽然一些浏览器目前仍然支持它,但也许会在未来的某个时间停止支持,请尽量不要使用该特性。
MouseEvent.initMouseEvent()
方法用以在鼠标事件创建时(一般用 Document.createEvent()
方法创建)初始化其属性的值。
事件初始化是在事件被Document.createEvent()
方法创建后必需的。这个方法必须在事件被EventTarget.dispatchEvent()
方法发送出来前调用。一旦事件被发送后,它将不再起任何作用。
不要再用此方法,已过时。
使用特定的事件构造器来替代它,像 MouseEvent()
。创建并发送事件 页面里有更多的使用信息。
语法
event.initMouseEvent(type, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget);
形参
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。 -
示例
HTML内容
<div style="background:red;width:180px;padding:10px;"> <div id="out"></div> <input type="text"> </div>
JavaScript内容
document.body.onclick = function(){ e = arguments[0]; var dt = e.target,stag = dt.tagName.toLowerCase();
document.getElementById("out").innerHTML = stag;}; var simulateClick = function(){ var evt = document.createEvent("MouseEvents"); evt.initMouseEvent("click", true, true, window, 0, 0, 0, 80, 20, false, false, false, false, 0, null); document.body.dispatchEvent(evt); } simulateClick();//Why it can not show "input" ?
这里有个在线演示
标准
Specification | Status | Comment |
---|---|---|
Document Object Model (DOM) Level 3 Events Specification MouseEvent.initMouseEvent() |
Working Draft | From Document Object Model (DOM) Level 2 Events Specification, deprecated. |
Document Object Model (DOM) Level 2 Events Specification MouseEvent.initMouseEvent() |
Recommendation | Initial definition. |
浏览器兼容性
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | ? | (Yes) | ? |
Feature | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | ? | (Yes) | ? |
参阅
MouseEvent()
构造器,更标准的创建MouseEvent
对象方法。Event.initEvent()
可以简单达到相同目的的方法。它已过时不再使用。