【发布时间】:2021-11-25 06:42:45
【问题描述】:
我正在尝试在 react.js 应用程序中模拟触摸事件。目标是触发触摸事件而不是鼠标事件(即mouseDown 应该触发touchStart 等)。
我试图复制的行为与您在移动视图上使用 Chrome 开发工具控制台时的行为相同。
【问题讨论】:
标签: javascript reactjs events mouseevent touch-event
我正在尝试在 react.js 应用程序中模拟触摸事件。目标是触发触摸事件而不是鼠标事件(即mouseDown 应该触发touchStart 等)。
我试图复制的行为与您在移动视图上使用 Chrome 开发工具控制台时的行为相同。
【问题讨论】:
标签: javascript reactjs events mouseevent touch-event
您可以使用 Event 类创建事件。然后您可以在 dom 元素或窗口上调度事件
const clickEvent = new Event('touchStart', {"bubbles":true})
window.dispatchEvent(clickEvent);
这是一篇涵盖这两行代码的长文:https://medium.com/@gianfranconuschese/simulating-events-with-javascript-c62da15422b2
所以基本上你可以使用window.addEventListener('mouseDown', eventHandler),其中 eventHandler 将是一个调用我之前分享的两行代码的函数
【讨论】: