1. <ul id="0c1fb"></ul>

      <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
      <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区

      RELATEED CONSULTING
      相關(guān)咨詢
      選擇下列產(chǎn)品馬上在線溝通
      服務(wù)時間:8:30-17:00
      你可能遇到了下面的問題
      關(guān)閉右側(cè)工具欄

      新聞中心

      這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
      微信小程序如何實現(xiàn)向左滑動刪除功能

      這篇文章將為大家詳細講解有關(guān)微信小程序如何實現(xiàn)向左滑動刪除功能,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

      創(chuàng)新互聯(lián)專業(yè)提供大邑服務(wù)器托管服務(wù),為用戶提供五星數(shù)據(jù)中心、電信、雙線接入解決方案,用戶可自行在線購買大邑服務(wù)器托管服務(wù),并享受7*24小時金牌售后服務(wù)。

      微信小程序 向左滑動刪除功能的實現(xiàn)

      實現(xiàn)效果圖:

      微信小程序如何實現(xiàn)向左滑動刪除功能

      實現(xiàn)代碼:

      1、wxml touch-item元素綁定了bindtouchstart、bindtouchmove事件

      
       
        {{item.content}}
        刪除
       
      

      2、wxss flex布局、css3動畫

      .touch-item {
       font-size: 14px;
       display: flex;
       justify-content: space-between;
       border-bottom:1px solid #ccc;
       width: 100%;
       overflow: hidden
      }
      .content {
       width: 100%;
       padding: 10px;
       line-height: 22px;
       margin-right:0;
       -webkit-transition: all 0.4s;
       transition: all 0.4s;
       -webkit-transform: translateX(90px);
       transform: translateX(90px);
       margin-left: -90px
      }
      .del {
       background-color: orangered;
       width: 90px;
       display: flex;
       flex-direction: column;
       align-items: center;
       justify-content: center;
       color: #fff;
       -webkit-transform: translateX(90px);
       transform: translateX(90px);
       -webkit-transition: all 0.4s;
       transition: all 0.4s;
      }
      .touch-move-active .content,
      .touch-move-active .del {
       -webkit-transform: translateX(0);
       transform: translateX(0);
      }

      3、js 注釋很詳細

      var app = getApp()
      Page({
       data: {
        items: [],
        startX: 0, //開始坐標
        startY: 0
       },
       onLoad: function () {
        for (var i = 0; i < 10; i++) {
         this.data.items.push({
          content: i + " 向左滑動刪除哦,向左滑動刪除哦,向左滑動刪除哦,向左滑動刪除哦,向左滑動刪除哦",
          isTouchMove: false //默認全隱藏刪除
         })
        }
        this.setData({
         items: this.data.items
        })
       },
       //手指觸摸動作開始 記錄起點X坐標
       touchstart: function (e) {
        //開始觸摸時 重置所有刪除
        this.data.items.forEach(function (v, i) {
         if (v.isTouchMove)//只操作為true的
          v.isTouchMove = false;
        })
        this.setData({
         startX: e.changedTouches[0].clientX,
         startY: e.changedTouches[0].clientY,
         items: this.data.items
        })
       },
       //滑動事件處理
       touchmove: function (e) {
        var that = this,
         index = e.currentTarget.dataset.index,//當前索引
         startX = that.data.startX,//開始X坐標
         startY = that.data.startY,//開始Y坐標
         touchMoveX = e.changedTouches[0].clientX,//滑動變化坐標
         touchMoveY = e.changedTouches[0].clientY,//滑動變化坐標
         //獲取滑動角度
         angle = that.angle({ X: startX, Y: startY }, { X: touchMoveX, Y: touchMoveY });
        that.data.items.forEach(function (v, i) {
         v.isTouchMove = false
         //滑動超過30度角 return
         if (Math.abs(angle) > 30) return;
         if (i == index) {
          if (touchMoveX > startX) //右滑
           v.isTouchMove = false
          else //左滑
           v.isTouchMove = true
         }
        })
        //更新數(shù)據(jù)
        that.setData({
         items: that.data.items
        })
       },
       /**
        * 計算滑動角度
        * @param {Object} start 起點坐標
        * @param {Object} end 終點坐標
        */
       angle: function (start, end) {
        var _X = end.X - start.X,
         _Y = end.Y - start.Y
        //返回角度 /Math.atan()返回數(shù)字的反正切值
        return 360 * Math.atan(_Y / _X) / (2 * Math.PI);
       },
       //刪除事件
       del: function (e) {
        this.data.items.splice(e.currentTarget.dataset.index, 1)
        this.setData({
         items: this.data.items
        })
       }
      })

      關(guān)于“微信小程序如何實現(xiàn)向左滑動刪除功能”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。


      網(wǎng)站名稱:微信小程序如何實現(xiàn)向左滑動刪除功能
      網(wǎng)站鏈接:http://www.ef60e0e.cn/article/jiiedi.html
      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区
      1. <ul id="0c1fb"></ul>

        <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
        <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

        安平县| 革吉县| 蓬溪县| 宜兴市| 临江市| 衡山县| 宜章县| 广丰县| 广元市| 噶尔县| 桦川县| 扎鲁特旗| 韩城市| 柏乡县| 建昌县| 建昌县| 海晏县| 五大连池市| 湘乡市| 昭苏县| 内丘县| 临海市| 连州市| 丹阳市| 拉萨市| 三河市| 武威市| 丹棱县| 荔浦县| 壤塘县| 平陆县| 安岳县| 香港| 斗六市| 温宿县| 通江县| 甘谷县| 南平市| 沙河市| 巢湖市| 佛冈县|