猿问

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没有触发,它则自动默认我的拖动距离为上一次的拖动距离,自动帮我做上一次的滚动处理,我该怎么样做处理


UYOU
浏览 3845回答 1
1回答

慕慕森

每次触发touchmove触发的时候进行,初始值的清空,再触发事件,瓜皮
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答