由于我没有时间讨论的原因,我正在编写IE 8(仅限)并且需要使用element.fireEvent('eventname', eventObject)
方法。这是我的代码:
var divObj = document.getElementById('div_id');
var evObj = document.createEventObject();
evObj.x = 0; evObj.y = 0;
evObj.srcElement = divObj;
evObj.type = 'onmousedown';
divObj.fireEvent('onmousedown', evObj);
当我设置断点并观察evObj.srcElement
的值时,它为空。其他属性按编写填充。
我在这里查了一下:http://msdn.microsoft.com/en-us/library/ie/ms535863(v=vs.85).aspx 在这里:http://msdn.microsoft.com/en-us/library/ie/ms534638(v=vs.85).aspx
似乎我应该能够设置此属性。关于为什么这是空的任何想法?我错过了一些明显的东西吗?
答案 0 :(得分:0)
我找到了答案here:
无论它们在事件对象中指定的值如何,四个事件属性的值 - cancelBubble,returnValue,srcElement, 和type - 自动初始化为显示的值 下表。
cancelBubble - >假
returnValue - >真
srcElement - >触发事件的元素
type - >被解雇的事件的名称
因此,似乎事件对象的文档不正确。