微信小程序12行js代码自己写个滑块功能(推荐)


Posted in Javascript onJuly 15, 2020

效果图如下所示

微信小程序12行js代码自己写个滑块功能(推荐)

.wxml

<view class="jindu" bindtap="cuin">
 <view class="xian" style="width:{{towards}}px;">
 <view class="yuan" bindtouchmove='touchMove'></view>
 </view>
</view>
<view class="bfb">{{percen}}%</view>

.wxss

page{
 background-color:#ddd;
}
.jindu{
 margin: 50px calc((100% - 300px) / 2) 0;
 width: 300px;
 float: left;
 height: 6rpx;
 background-color: #fff;
 position: relative;
}
.xian{
 width: 0%;
 float: left;
 height: 6rpx;
 background-color: #1989FA;
 position: relative;
 transition: all 0.1s;
}
.yuan{
 border-radius: 50%;
	background: #1989FA;
	position: absolute;
	right: 0rpx;
	display: block;
 margin: calc((6rpx - 14rpx)/2);
	width: 14rpx;
	height: 14rpx;
}
.bfb{
 width: 300px;
 margin: 10px calc((100% - 300px) / 2) 0;
 float: left;
}

.js

Page({
 data: {
 towards: 0,
 percen:0,
 kuan:0,
 },
 onLoad:function(options){
 this.setData({
  kuan: parseInt((wx.getSystemInfoSync().windowWidth - 300) / 2)
 })
 },
 cuin:function(e){
 this.setData({
  towards: (e.detail.x - this.data.kuan) > 300 ? 300 : (e.detail.x - this.data.kuan),
  percen: (e.detail.x / (300 / 100)) < 1 ? 0 : parseInt(e.detail.x / (300 / 100)),
 })
 },
 touchMove: function (e) {
 if (e.touches.length == 1) {
  var moveX = e.touches[0].clientX;
  var towards = (moveX - this.data.kuan) > 300 ? 300 : (moveX - this.data.kuan)
  this.data.percen = (towards / (300 / 100)) < 1 ? 0 : parseInt(towards / (300 / 100))
  this.setData({
  towards: towards,
  percen: this.data.percen
  })
 }
 },
})

到此这篇关于微信小程序12行js代码自己写个滑块功能的文章就介绍到这了,更多相关微信小程序滑块内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
javascript实现二分查找法实现代码
Nov 12 Javascript
为javascript添加String.Format方法
Aug 11 Javascript
Javascript 变量作用域 两个可能会被忽略的小特性
Mar 23 Javascript
javascript 仿QQ滑动菜单效果代码
Sep 03 Javascript
jquery.post用法关于type设置问题补充
Jan 03 Javascript
Node.js安装教程和NPM包管理器使用详解
Aug 16 Javascript
javascript显示上周、上个月日期的处理方法
Feb 03 Javascript
jQuery Dialog 打开时自动聚焦的解决方法(两种方法)
Nov 24 Javascript
JavaScript中localStorage对象存储方式实例分析
Jan 12 Javascript
微信小程序实现签字功能
Dec 23 Javascript
在vs code 中如何创建一个自己的 Vue 模板代码
Nov 10 Javascript
Vue实现tab导航栏并支持左右滑动功能
Jun 28 Vue.js
TypeScript 引用资源文件后提示找不到的异常处理技巧
Jul 15 #Javascript
微信小程序实现列表的横向滑动方式
Jul 15 #Javascript
JavaScript之scrollTop、scrollHeight、offsetTop、offsetHeight等属性学习笔记
Jul 15 #Javascript
JavaScript实时更新当前的时间的示例代码
Jul 15 #Javascript
jQuery 添加元素和删除元素的方法
Jul 15 #jQuery
vue如何在项目中调用腾讯云的滑动验证码
Jul 15 #Javascript
Vue中keep-alive的两种应用方式
Jul 15 #Javascript
You might like
《PHP编程最快明白》第四讲:日期、表单接收、session、cookie
2010/11/01 PHP
php中使用cookie来保存用户登录信息的实现代码
2012/03/08 PHP
thinkPHP中验证码的简单实现方法
2016/12/05 PHP
基于PHP常用文件函数和目录函数整理
2017/08/17 PHP
限制复选框的最大可选数
2006/07/01 Javascript
select 控制网页内容隐藏于显示的实现代码
2010/05/25 Javascript
Jquery插件之多图片异步上传
2010/10/20 Javascript
字符串的replace方法应用浅析
2011/12/06 Javascript
js中substr,substring,indexOf,lastIndexOf的用法小结
2013/12/27 Javascript
IE6已终止操作问题的2种情况及解决
2014/04/23 Javascript
Bootstrap3.0建站教程(一)之bootstrap表单元素排版
2016/06/01 Javascript
JS从数组中随机取出几个数组元素的方法
2016/08/02 Javascript
AngularJS入门教程之过滤器详解
2016/08/19 Javascript
jQuery表单元素选择器代码实例
2017/02/06 Javascript
vue iView 上传组件之手动上传功能
2018/03/16 Javascript
全面解析vue router 基本使用(动态路由,嵌套路由)
2018/09/02 Javascript
从Vuex中取出数组赋值给新的数组,新数组push时报错的解决方法
2018/09/18 Javascript
详解vue使用$http服务端收不到参数
2019/04/19 Javascript
详解vue v-model
2020/08/31 Javascript
[01:42]TI4西雅图DOTA2前线报道 第一顿早饭哦
2014/07/08 DOTA
[56:21]LGD vs IG 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python socket网络编程步骤详解(socket套接字使用)
2013/12/06 Python
机器学习之KNN算法原理及Python实现方法详解
2018/07/09 Python
python生成lmdb格式的文件实例
2018/11/08 Python
Python3爬虫使用Fidder实现APP爬取示例
2018/11/27 Python
Python3 SSH远程连接服务器的方法示例
2018/12/29 Python
Wiggle中国:英国骑行、跑步、游泳 & 铁三运动装备专卖网店
2016/08/02 全球购物
时尚休闲吧创业计划书
2014/01/25 职场文书
幼儿教师研修感言
2014/02/12 职场文书
彩色的非洲教学反思
2014/02/18 职场文书
学习教师法的心得体会
2014/09/03 职场文书
工作经验交流材料
2014/12/30 职场文书
个人维稳承诺书
2015/05/04 职场文书
2015年学校少先队工作总结
2015/07/20 职场文书
总结Java对象被序列化的两种方法
2021/06/30 Java/Android
Golang 实现WebSockets
2022/04/24 Golang