0

我的网络应用程序在计算机上运行良好,但似乎无法让它在手机上运行,​​主要是因为 onmouseup 没有被触发。所以我添加了 touchend 事件,认为它会是一样的,但它没有帮助。如何在手机上获得与 onmouseup 相同的行为?

基本上,我有一个范围滑块,我希望它的释放滑块部分可以在手机上使用

  <input id="slider" class="slider" type="range" min="0" max="100" value=50 onmouseup="handleSubmit()" touchend="handleSubmit()"/>

我已经在移动 safari 和 chrome 上尝试过......两者都不起作用

4

2 回答 2

1

您不需要依赖 mouseup 或 touchend。输入元素提供了另一个派上用场的事件:onchange

一旦输入的值发生更改,此输入就会触发 - 因为用户释放了滑块。

这是一个例子:

function handleSubmit(e) {
  console.log(e.value)
}
<input id="slider" class="slider" type="range" min="0" max="100" value=50 onchange="handleSubmit(this)" />

于 2019-07-03T21:39:51.203 回答
0

我很愚蠢...它应该是ontouchend

<input id="slider" class="slider" type="range" min="0" max="100" value=50 onmouseup="handleSubmit()" touchend="handleSubmit()"/>

还是js新手哈哈

于 2019-07-03T21:39:27.900 回答