如何在浏览器中模拟触摸手势,最好是chrome?

31moq8wy  于 2022-12-16  发布在  Go
关注(0)|答案(5)|浏览(1102)

这个问题的目的是学习如何测试移动的设备上的触摸事件的JS事件侦听器。

kdfy810k

kdfy810k1#

在Chrome上,按F12切换开发者模式。
然后,在开发者部分的左上角,您将看到一个小图标,上面写着“切换设备模式”(Ctrl/CMD + Shift + M)

然后,您可以在顶部的设备之间切换。

这将模仿真实的设备所做的触摸手势。

yfwxisqw

yfwxisqw2#

如果您进入开发人员工具(F12),进入响应式设计模式(Ctrl + Shift + M)并选择一个支持触摸的设备,您可以对其进行更改,使其在您与页面交互时触发触摸事件(而不是鼠标事件)。

r6hnlfcb

r6hnlfcb3#

我推荐Hammerjs's触摸模拟器。它可以让你像Chrome一样触摸事件,但 * 也 * 多点触摸事件(特别是捏)。它很容易安装在你的网页上,而开发。我用它来测试的东西写在Fulcro(React)。工作完美。

6gpjuf90

6gpjuf904#

打开devtools,在左上角有一个手机屏幕的图标,点击它可以打开手机模式,你会知道你是在手机模式下,因为页面会变小,光标所在的地方会出现一个圆圈,点击它会模拟一个触摸事件。

yeotifhr

yeotifhr5#

首先确保你的devtools正在模拟触摸(在chrome中,进入响应模式并选择一个移动的设备)。然后,它是这样工作的:有4个触摸事件:touchstart,touchmove,touchend,touchcancel.如果你想模拟touchmove(即当手指按下时点击并移动),那么你可以在窗口或元素中添加一个事件侦听器,每个事件的触发都将触发你分配的回调。回调将接收整个事件,最好从浏览整个事件开始,看看其中哪些内容对您有用。
例如,touchmove事件会有一个名为touchs的数组,其中包含名为touch的对象。如果有两个手指向下,数组中会有两个项,每个项都有一个pageX和pageY属性,可以给予你手指的位置(尽管在devtools中不能模拟多个手指,所以你只能使用第一项([0])。
window.addEventListener("touchmove", (event) => { do something with event);

相关问题