在jsdom命令行界面中运行以进行单元测试。
const event = new window.TouchEvent('touchstart');
为什么这不起作用?
根据此MDN列表,它应该通过构造函数工作。
这很好用:
const event = new window.MouseEvent('mousemove');
这也可以,但是不建议使用:
const event = document.creatEvent('touchstart');
最佳答案
@马丁马扎道森
像您提到的那样不推荐使用createEvent方法。只要传递到方法中的事件在列表中,您仍然可以使用document.createEvent。这是可以传递给createEvent方法的事件类型的列表。
https://developer.mozilla.org/en-US/docs/Web/API/Document/createEvent
指定的列表中不存在'touchstart'事件类型。我相信您指的是“ontouchstart”,它是一种可以在DOM中存在的单个元素上执行的方法。可以在此处找到有关ontouchstart的文档。
https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/ontouchstart
我希望这能够帮到你。祝你有美好的一天。
关于javascript - TouchEvent非法构造函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42543645/