对于 JS 单元测试,我需要检查双击行为是否符合预期。问题是该事件是通过 element.addEventListener 注册的。由于某种原因,在这种情况下,element.ondblclick() 不起作用。
HTML:
<input type="image" src="pic.jpg" id="aa"/>
JavaScript:
document.getElementById('aa').addEventListener("dblclick", function(){alert('aa')});
document.getElementById('aa').ondblclick();
Fiddle: http://jsfiddle.net/prZKy/ http://jsfiddle.net/prZKy/
如果双击图像,它可以工作,但 javascript 中的 ondblclick() 不起作用。
有人知道如何做吗?
您可以使用dispatchEvent
以编程方式触发事件:
var event = new MouseEvent('dblclick', {
'view': window,
'bubbles': true,
'cancelable': true
});
document.getElementById('aa').dispatchEvent(event);
请参阅“触发内置事件”部分MDN https://developer.mozilla.org/en-US/docs/Web/Guide/DOM/Events/Creating_and_triggering_events#Triggering_built-in_events.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)