我想手动触发触摸事件,但我无法调用。 这在 JavaScript 中是可能的,但 TypeScript 无法实现。
例子:
let touchStart: TouchEvent = document.createEvent('TouchEvent');
touchStart.initEvent('touchstart', true, true);
element.dispatchEvent(touchStart);
如果我尝试这样做,我可以触发 touchStart 事件,但我无法获得 changedTouches[0].pageX
和 changedTouches[0].pageY
基于 this link我试过如下,
touchStart.changedTouches = [
pageX: x
pageY: y
]
但我无法在 changedTouches
中分配值,因为该属性是只读的。
如何实现?在 TypeScript 中使用 changedTouches
?
最佳答案
这是 TypeScript 的 lib.d.ts
的一个实际错误,它定义了 JavaScript 和 DOM 中所有内容的类型。
我打开了一个 ticket和一个 pull request解决这个问题。
如果它们被接受,您可以期待 new TouchEvent(eventType, initArguments);
的标准方式在未来版本的 TypeScript 中工作。
参见 this MDN tutorial了解在 JavaScript 中执行此操作的正确方法。
关于javascript - 如何在 TypeScript 中手动触发 TouchEvent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42575330/