微信小程序區分點擊,長按事件


  在上代碼之前,微信小程序點擊事件,長按事件的觸發順序需要我們了解一下下

  事務分類

    touchstart:手指觸摸

    longtap:手指觸摸后后,超過350ms離開

    touchend:手指觸摸動作結束

    tap:手指觸摸后離開

事件 觸發順序
單擊 touchstart → touchend → tap
長按 touchstart → longtap → touchend → tap

  通過上表格可以發現,單擊事件與長按事件的區別就在於 longtap事件,所以我們通過longtap事件進行區分。現在可以開始上代碼啦

  .xwml  文件

  <view >
    <image  src='{{urls}}' class="asd" mode="aspectFit" bindtap='nophonefull' id="{{urls}}"  bindlongtap="bingLongTap" bindtouchstart="touchStart" bindtouchend="touchEnd"></image>
  </view>
 
  .js  文件
  //定義用到的變量
  data: {
    startTime:0,   //點擊開始時間
    endTime:0  //點擊結束時間
  }
  //手指觸摸開始賦值
  touchStart: function (e) {
    this.startTime = e.timeStamp;
  }
  //手指觸摸結束賦值
  touchEnd: function (e) {
    this.endTime = e.timeStamp;
  }
  // nophonefull 不管點擊還是長按都會觸發的事件
  nophonefull: function () {
    //通過判斷手指觸摸時間來判斷是否是點擊事件,當時間差小於350時,為點擊事件
    if (this.endTime - this.startTime < 350) {
      //這里可以做點擊事件的處理啦
    }
  }
  //只有長按事件才會觸發 
  bingLongTap : function(e){
    //這里可以做長按事件要處理的
  }
 
  以上就是區分點擊事件和長按事件的方法啦,如果有不對的地方或者有跟簡單的方法,歡迎留言
 
 

    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM