鍍金池/ 問答/HTML5  HTML/ vue touch事件中,點(diǎn)擊不觸發(fā)touchmove如何解決

vue touch事件中,點(diǎn)擊不觸發(fā)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; //拖動(dòng)距離
    },
    endScroll(index, img, way) {
      
      if (this.scrollY < 0) {
        // 上滾事件
        this.next(index, img, way);
      } else {
        // 下滾事件
        this.prev(index, img, way);
      }
    }

這是touchstart,touchmove,touchend三個(gè)事件,我原意是當(dāng)scrollY >0時(shí)上滾,<0時(shí)下滾,=0時(shí)變成一個(gè)點(diǎn)擊事件,但如果我拖動(dòng)一次后進(jìn)行點(diǎn)擊,touchmove沒有觸發(fā),它則自動(dòng)默認(rèn)我的拖動(dòng)距離為上一次的拖動(dòng)距離,自動(dòng)幫我做上一次的滾動(dòng)處理,我該怎么樣做處理

回答
編輯回答
陌璃

已經(jīng)解決了,用清空初始值就好了

2017年8月26日 17:45
編輯回答
熟稔

每次觸發(fā)touchmove觸發(fā)的時(shí)候進(jìn)行,初始值的清空,再觸發(fā)事件,瓜皮

2018年7月10日 21:06