javascript - document.createEvent 失败

标签 javascript javascript-events

以下代码失败(在 javascript 控制台中,以及通过浏览器扩展注入(inject)脚本时)

document.createEvent('TestEvent')

Firebug 吐出:

[Exception... "Operation is not supported" 
 code: "9" 
 nsresult: "0x80530009 (NS_ERROR_DOM_NOT_SUPPORTED_ERR)" 
 location: "http://www.google.com 
 Line: 71"] 

Chrome 给出了类似的错误信息。我做错了什么?

最佳答案

来自documentation :

type is a string that represents the type of event to be created. Possible event types include "UIEvents", "MouseEvents", "MutationEvents", and "HTMLEvents".

所以你可能想要:

var e = document.createEvent('HTMLEvents');
e.initEvent('TestEvent', true, true);

参见 event.initEvent .

更新:也许 document.createEvent('Event'); 对于自定义事件甚至更好,但它是 DOM Level 3 的一部分,我不知道它得到了多少支持。

关于javascript - document.createEvent 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4645724/

相关文章:

javascript - 单击标题时,排序 ngTable 不起作用

javascript - (模拟按键的缺点是什么?是否有更好的方法?

javascript - document.createElement ('script' ).src = 变量?是否可以?

javascript - 表单内联提交如何在Facebook请求页面上工作

JavaScript:当所有对象都被游戏捕获时提醒用户

javascript - Scripts.Render() 如果不存在

javascript - 导出 React 组件

javascript - 无法使用 Knockout Kendo JS Binding 自定义 Kendo 日历月份模板

javascript - var a = function() vs function a() 用于事件监听器?

javascript-events - 如何在javascript中停止onChange