Scroll 在iOS safari中,当用户触摸停止滚动元素时,event.target无法返回手指下的正确元素 问题

Scroll 在iOS safari中,当用户触摸停止滚动元素时,event.target无法返回手指下的正确元素 问题,scroll,mobile-safari,touch-event,Scroll,Mobile Safari,Touch Event,请在iOS safari上进行测试 在本例中,当用户触摸一个锚点时,位于触摸位置的锚点背景将变为灰色 当用户滚动该元素,并立即触摸该元素,使其在自行停止之前停止。错误的元素将变为灰色。事实上,滚动前触摸位置的锚定将变为灰色 可能的解决方案 最好的解决方案是在触摸停止滚动元素时在触摸位置获得正确的定位 如果无法获得正确的定位,请在接受触摸停止滚动元素时停止灰色旋转。但我如何知道用户是在触摸停止滚动元素还是只是在轻敲?换句话说,我如何知道元素是否在滚动 我也遇到了这个问题。滚动搜索结果列表,点击其中

请在iOS safari上进行测试

在本例中,当用户触摸一个锚点时,位于触摸位置的锚点背景将变为灰色

当用户滚动该元素,并立即触摸该元素,使其在自行停止之前停止。错误的元素将变为灰色。事实上,滚动前触摸位置的锚定将变为灰色

可能的解决方案
  • 最好的解决方案是在触摸停止滚动元素时在触摸位置获得正确的定位

  • 如果无法获得正确的定位,请在接受触摸停止滚动元素时停止灰色旋转。但我如何知道用户是在触摸停止滚动元素还是只是在轻敲?换句话说,我如何知道元素是否在滚动


  • 我也遇到了这个问题。滚动搜索结果列表,点击其中一项,获取详细信息。只有当滚动帽完全停止时,这才有效。只要列表中还有一些移动,点击就会选择错误的项目

    简单解决方案:禁用本机滚动,取出

    -webkit-overflow-scrolling: touch;
    
    它不再能很好地滚动了,但现在水龙头确实起作用了

    在这一点上,如果您真的需要的话,您可以查看一些库,这些库可以带来很好的滚动效果