微信小程序实现拉链式的滑动验证

 更新时间:2022年05月23日 13:56:11   作者:掠影浮华  
这篇文章主要为大家详细介绍了微信小程序实现拉链式的滑动验证,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了微信小程序实现拉链式滑动验证的具体代码,供大家参考,具体内容如下

view结构

<view style="position: relative;height:90rpx">
    <movable-area class="content" style="width:{{area_width}}rpx">
      <movable-view class='box' style='width:{{box_width}}rpx' friction="{{100}}" direction="horizontal" x="{{x}}" damping="{{500}}" bindchange="drag" bindtouchend="dragOver">
        <view class='movable-icon'></view>
      </movable-view>
    </movable-area>
    <view class="black" style="width:{{text}}rpx"></view>
    <view class="movable_text"> 向右滑动验证</view>
</view>

wxss样式

.content {
  position: absolute;
  right: 50rpx;
  height: 90rpx;
  background-color: #4fca9b;
  color: white;
  border-radius: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
}
.box {
  z-index: 45;
  height: 90rpx;
  background-color: transparent;
  border-radius: 50rpx;
  display: flex;
  justify-content: center;
  align-items: center;
}
.movable-icon {
  z-index: 40;
  width: 120rpx;
  height: 90rpx;
  background-color: blue;
  border-radius:50rpx; 
  background-size: 100% 100%;
}
.black {
  z-index: 10;
  height: 90rpx;
  background-color: #acacac;
  position: absolute;
  right: 50rpx;
  border-radius: 50px;
}
.movable_text {
  font-size: 32rpx;
  z-index: 30;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  top: 50%;
}

js逻辑

Page({
  data: {
    // 滑块
    x: 0,
    area_width: 620, //可滑动区域的宽,单位是百分比,设置好后自动居中
    text: 620,
    box_width: 120, //滑块的宽,单位是 rpx
    maxNum: 620;
    coord: '',
  },
  onShow(){
      this.data.rpx = this.getRpx() // px与rpx的转换
  },
    getRpx(){
    var winWidth = wx.getSystemInfoSync().windowWidth;
    return 750 / winWidth;
  },
    // 滑块
  drag(e) {
    let rpx = this.data.rpx
    var coord = e.detail.x;
    let wid = this.data.maxNum - (coord) * rpx
    this.setData({
      coord: coord,
      text: wid
    })
  },
    // 滑块验证
  dragOver(e) {
    let rpx = this.data.rpx
    if ((this.data.coord) * rpx + this.data.box_width+5>= this.data.maxNum) {
      //验证成功之后的代码
    } else {
      this.setData({
        x: 0,
      })
    }
  },

这里是用了微信小程序的组件可移动的视图容器,有两层容器的嵌套,通过滑块的滑动,改变第二层的宽度,以达到拉链式的效果。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • javascript+ajax实现产品页面加载信息

    javascript+ajax实现产品页面加载信息

    本文给大家分享的是使用javascript结合ajax实现产品页面无刷新加载信息的代码,非常的简单实用,有需要的小伙伴可以参考下。
    2015-07-07
  • JavaScript+canvas实现框内跳动小球

    JavaScript+canvas实现框内跳动小球

    这篇文章主要为大家详细介绍了JavaScript+canvas实现框内跳动小球,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • javascript编程异常处理实例小结

    javascript编程异常处理实例小结

    这篇文章主要介绍了javascript编程异常处理的方法,结合实例形式分析总结了JavaScript编程中异常处理的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-11-11
  • 移动web开发之touch事件实例详解

    移动web开发之touch事件实例详解

    下面小编就为大家分享一篇移动web开发之touch事件实例详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • JS简单获取及显示当前时间的方法

    JS简单获取及显示当前时间的方法

    这篇文章主要介绍了JS简单获取及显示当前时间的方法,涉及javascript针对日期与时间的获取与运算相关操作技巧,需要的朋友可以参考下
    2016-08-08
  • javascript浅层克隆、深度克隆对比及实例解析

    javascript浅层克隆、深度克隆对比及实例解析

    这篇文章主要介绍了javascript浅层克隆、深度克隆对比及实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • JavaScript 监控微信浏览器且自带返回按钮时间

    JavaScript 监控微信浏览器且自带返回按钮时间

    这篇文章主要介绍了JavaScript 监控微信浏览器且自带返回按钮时间的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-11-11
  • javascript常用经典算法详解

    javascript常用经典算法详解

    本文主要介绍了javascript七种常见算法:冒泡排序;插入排序;希尔排序;归并排序;快速排序;选择排序;奇偶排序。具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • Bootstrap框架实现广告轮播效果

    Bootstrap框架实现广告轮播效果

    这篇文章主要为大家详细介绍了Bootstrap框架结合JavaScript实现广告轮播特效,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • javascript 弹出的窗口返回值给父窗口具体实现

    javascript 弹出的窗口返回值给父窗口具体实现

    这篇文章主要介绍了javascript 弹出的窗口返回值给父窗口具体实现,有需要的朋友可以参考一下
    2013-11-11

最新评论