我正在添加一个监听器,如下所示:
window.addEventListener('native.showkeyboard', function (e) {
...
...
});
我正在为此编写单元测试,因此我想触发事件。我正在做:
window.trigger('native.showkeyboard');
但是我最终在该行出现了一个错误,说:
undefined is not a function
如何手动触发此事件?
编辑
我也尝试过:
$(window).trigger('native.showkeyboard');
但该处理程序未与此一起运行,因为它未在jquery中注册...
最佳答案
如果您通过jQuery
触发事件,那么该事件应该已经通过jQuery
附加了-请参阅@fredericHamidi的评论。
$(window).on('native.showkeyboard', function (e) {
.........
});
$(window).trigger('native.showkeyboard');
WORKING JSFIDDLE DEMO
或者,如果您使用纯 Vanilla JS,请按照以下方式进行操作:
window.addEventListener('native.showkeyboard', function (e) {
........
});
window.dispatchEvent( new Event('native.showkeyboard') );
WORKING JSFIDDLE DEMO