微信小程序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 读取图片文件的大小
Jun 25 Javascript
js 针对html DOM元素操作等经验累积
Mar 11 Javascript
js实现checkbox全选和反选示例
May 01 Javascript
jQuery链使用指南
Jan 20 Javascript
鼠标事件的screenY,pageY,clientY,layerY,offsetY属性详解
Mar 12 Javascript
JS中setTimeout的巧妙用法前端函数节流
Mar 24 Javascript
Java遍历集合方法分析(实现原理、算法性能、适用场合)
Apr 25 Javascript
JS中with的替代方法与String中的正则方法详解
Dec 23 Javascript
原生JS下拉加载插件分享
Dec 26 Javascript
浅谈vue的iview列表table render函数设置DOM属性值的方法
Sep 30 Javascript
JS实现去除数组中重复json的方法示例
Dec 21 Javascript
JavaScript修改注册表实例代码
Jan 05 Javascript
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程序
2006/10/09 PHP
PHP array_push 数组函数
2009/12/26 PHP
php调用c接口无错版介绍
2014/03/11 PHP
PHP不使用递归的无限级分类简单实例
2016/11/05 PHP
laravel高级的Join语法详解以及使用Join多个条件
2019/10/16 PHP
JS 自定义带默认值的函数
2011/07/21 Javascript
JQuery入门—JQuery程序的代码风格详细介绍
2013/01/03 Javascript
jQuery中的val()示例应用
2014/02/26 Javascript
javascript使用switch case实现动态改变超级链接文字及地址
2014/12/16 Javascript
JavaScript的继承实现小结
2017/05/07 Javascript
js异步编程小技巧详解
2017/08/14 Javascript
JS实现去除数组中重复json的方法示例
2017/12/21 Javascript
JS实现为动态添加的元素增加事件功能示例【基于事件委托】
2018/03/21 Javascript
浅谈使用mpvue开发小程序需要注意和了解的知识点
2018/05/23 Javascript
微信小程序实现美团菜单
2018/06/06 Javascript
详解javascript 变量提升(Hoisting)
2019/03/12 Javascript
JavaScript定时器使用方法详解
2020/03/26 Javascript
vue-model实现简易计算器
2020/08/17 Javascript
js实现石头剪刀布游戏
2020/10/11 Javascript
JavaScript setTimeout()基本用法有哪些
2020/11/04 Javascript
js实现简单的倒计时
2021/01/28 Javascript
Python跳出循环语句continue与break的区别
2014/08/25 Python
Python实现文件按照日期命名的方法
2015/07/09 Python
python实现判断一个字符串是否是合法IP地址的示例
2018/06/04 Python
python+POP3实现批量下载邮件附件
2018/06/19 Python
Django中的文件的上传的几种方式
2018/07/23 Python
解析Python的缩进规则的使用
2019/01/16 Python
详解利用Python scipy.signal.filtfilt() 实现信号滤波
2019/06/05 Python
python常用库之NumPy和sklearn入门
2019/07/11 Python
Python提取PDF内容的方法(文本、图像、线条等)
2019/09/25 Python
岗位标兵事迹材料
2014/05/17 职场文书
2014年入党积极分子党校培训心得体会
2014/07/08 职场文书
六查六看剖析材料
2014/10/06 职场文书
西安导游词
2015/02/12 职场文书
导游词之临安白水涧
2019/11/05 职场文书
css3 filter属性的使用简介
2021/03/31 HTML / CSS