问题标签 [touchmove]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4792 浏览

jquery - jquery touchmove chrome 手机

如何在 touchmove 期间获取手指下元素的 id?

我想要实现的是:

  • 绑定触摸[开始|结束|移动]
  • 在 touchstart 开始选择
  • 在 touchmove 期间,收集我手指下“触摸”的所有 dom 元素

示例代码

解决了。

0 投票
2 回答
37880 浏览

javascript - 何时使用 touchmove 与 mousemove?

我构建了一个网络手机游戏,它在浏览器(PC/Mobile)上运行。

我是否需要使用touchmove

我怎样才能touchmove像活动一样mousemove举办活动?

0 投票
3 回答
23873 浏览

javascript - JavaScript 防止在 body 元素上触摸移动,在其他元素上启用

但很简单,我想阻止 body 元素上的 touchmove 事件,但为另一个元素启用它。我可以很好地禁用...但我不确定如何在其他地方重新启用它!

我想下面的理论上是有效的,因为return true它是相反的preventDefault,但它对我不起作用。可能是因为$altNav元素 $bod

JS:

0 投票
0 回答
248 浏览

javascript - 如何确定我当前正在处理最后一个 touchmove 事件?

正如我在本主题中确定的那样,该touchmove事件可能会根据被触摸的元素组合分批发送。

如果我有三个手指分别触摸不同的元素,但我仍然希望能够一起处理所有三个手指的运动(例如,定义这三个元素的共同父元素上的交互),我基本上必须合并来自触摸事件的数据,这些数据可能以touchmove每个设备输入样本的三个事件的“块”形式发出。

虽然一个简单的解决方法是“制作一个大的覆盖元素”并以通常的方式处理它,但我打算追求将复杂 DOM 结构上的复杂操作包装在一段易于部署的代码中的圣杯。

因此很明显,我想要么使用toucheslast-inbound 中列表外的数据touchmove,要么收集changedTouches每个touchmove. 我目前一直在编写一个跟踪触摸标识符的例程,一旦它看到一个重复的,它就会知道我们正在查看touchmove下一组中的第一个(下一个输入刻度)。

这显然不是最理想的,因为我现在在处理输入时引入了长达 16 毫秒的延迟。

我确实想出了一些可行的方法:如果事件是按照触摸的顺序发送的identifiers,那么当我处理以changedTouches对应于创建的最高编号的触摸结尾的列表时identifier(我从事件touchstart),那么这足以表明我已经touchmoves从硬件接收到当前时间步长的所有信息。

更新:我实现的是一个跟踪其中一个手指的变量,一旦它在 a 中看到那个手指touchmove changedTouches,它就会运行一个循环来处理touches. 这完全无法提供正确的信息。它检查的一次触摸可能不会移动,在这种情况下changedTouches会为它生成 no。

我还能做什么?

0 投票
1 回答
7390 浏览

javascript - 如何防止 touchmove 事件使用 jquery / javascript 移动背景?

目前我正在为 ipad Safari 开发一个网站

我用了

以防止在拖动内容时背景移动。问题是当我允许拖动某些元素时

当我拖动元素时,它也会拖动背景,如何解决这个问题?我观察到这个问题可能是由 taphold 引起的,谢谢。

0 投票
1 回答
2852 浏览

javascript - 防止 touchmove 事件与 jquery UI 对话框的滚动冲突

由于在 safari 等移动设备浏览器上,当用户拖动屏幕时,整个网站会随着手指一起移动。所以常见的解决方案是:

这将阻止任何 touchmove 事件。但是,由于移动设备上的浏览器没有滚动条,当用户想要滚动 jquery ui 的对话框时,需要允许 touchmove 事件。该语句将阻止该事件。

然后我添加此语句以允许对话框滚动。但是,该解决方案存在缺陷,因为背景将可拖动并再次与用户手指一起移动。如何解决这个问题?谢谢。

0 投票
2 回答
43758 浏览

jquery - jQuery:使用 touchmove 禁用和启用触摸

我使用此代码禁用和启用触摸:

功能可以很好地禁用触摸,但单击按钮后无法启用触摸。

代码有什么问题?

0 投票
1 回答
1170 浏览

javascript - ipad/iphone carousel 在 touchmove 中无法正常工作

我有一个轮播,它适用于除 ipad/iphone 之外的所有浏览器和所有设备。当我滑动轮播时,它会使用 jqueries 缓动和弹跳数次,然后停止。使它像在所有其他浏览器中一样运行的唯一方法是在滑动后弹出一条警报消息,然后它就可以正常工作了。

[代码]

}); [/代码]

moveLeft 和 moveRight 函数与轮播左侧和右侧的箭头一起使用,所以我知道它们可以工作,但仅适用于 onclick 事件。

[代码]

[/代码]

为什么这段代码对 onclick 如此有效,但对 touchmove 却不行?

I have tried to combine the binds of touchstart, touchend and touchmove - nada I have tried to use touchmove mousemove - diddlesquat I have tried to use a setTimeout thinking that I had to wait for the last event - nothing

Please help, this is driving me nuts.

0 投票
2 回答
14356 浏览

javascript - 使用 PhoneGap 在 Android 和 iPhone 上的“touchmove”事件

所以基本上我希望能够在有人在由 iOS 或 Android 驱动的触控设备的屏幕上滑动时获得触控坐标。

到目前为止,我尝试做的事情如下。

另外,我已经尝试过使用“vmousemove”(jquery mobile 等价物,或者应该是这样),“mousemove”,但无济于事。我只得到初始和结束触摸的坐标。

提前致谢

0 投票
1 回答
249 浏览

iphone - 使用 javascript 以编程方式控制 iPhone 缩放

我想在 iPhone 屏幕上跟随我的手指移动。然而,这会导致橡皮筋和滚动,因此我必须关闭默认行为。

如本网站所述

https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/HandlingEvents/HandlingEvents.html

我添加了事件监听器,就像这样

并禁用默认行为,就像这样

现在,我可以做我想做的事,但我不能再缩放页面了。我仍然能够检索 touchstart 坐标并从手势更改中检索缩放因子。从逻辑上讲,我想使用它们以编程方式更改页面缩放。如何用 javascript 做到这一点?