MouseEvent.initMouseEvent() - Web API 接口参考 编辑

已废弃
该特性已经从 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 的字符串,包含以下几种鼠标事件:clickmousedownmouseupmouseovermousemovemouseout
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" ?

这里有个在线演示

Link to live demo

标准

SpecificationStatusComment
Document Object Model (DOM) Level 3 Events Specification
MouseEvent.initMouseEvent()
ObsoleteFrom Document Object Model (DOM) Level 2 Events Specification, deprecated.
Document Object Model (DOM) Level 2 Events Specification
MouseEvent.initMouseEvent()
ObsoleteInitial definition.

浏览器兼容性

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support(Yes)(Yes)?(Yes)?
FeatureAndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support(Yes)(Yes)?(Yes)?

参阅

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

词条统计

浏览:94 次

字数:12156

最后编辑:6年前

编辑次数:0 次

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文