vue touch事件中,点击不触发touchmove如何解决

firstScroll(e) {
      e.preventDefault();
      this.firstScrollVal = e.touches[0].screenY; //初始位置
      console.log(this.firstScrollVal);
    },
    imgScroll(e) {
      e.preventDefault();
      let val = e.touches[0].screenY;
      this.scrollY = val - this.firstScrollVal; //拖动距离
    },
    endScroll(index, img, way) {
      
      if (this.scrollY < 0) {
        // 上滚事件
        this.next(index, img, way);
      } else {
        // 下滚事件
        this.prev(index, img, way);
      }
    }

这是touchstart,touchmove,touchend三个事件,我原意是当scrollY >0时上滚,<0时下滚,=0时变成一个点击事件,但如果我拖动一次后进行点击,touchmove没有触发,它则自动默认我的拖动距离为上一次的拖动距离,自动帮我做上一次的滚动处理,我该怎么样做处理

阅读 9.3k
2 个回答

每次触发touchmove触发的时候进行,初始值的清空,再触发事件,瓜皮

已经解决了,用清空初始值就好了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题