微信小程序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 动态参数判空操作
Dec 22 Javascript
Js参数值中含有单引号或双引号问题的解决方法
Nov 06 Javascript
javascript的parseFloat()方法精度问题探讨
Nov 26 Javascript
IE下双击checkbox反应延迟问题的解决方法
Mar 27 Javascript
Html5的placeholder属性(IE兼容)实现代码
Aug 30 Javascript
node.js中的http.response.setHeader方法使用说明
Dec 14 Javascript
jQuery使用each方法与for语句遍历数组示例
Jun 16 Javascript
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
Dec 14 Javascript
HTML页面定时跳转方法解析(2种任选)
Dec 22 Javascript
vue实现可视化可拖放的自定义表单的示例代码
Mar 20 Javascript
vue计算属性无法监听到数组内部变化的解决方案
Nov 06 Javascript
pnpm对npm及yarn降维打击详解
Aug 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
ThinkPHP2.x防范XSS跨站攻击的方法
2015/09/25 PHP
PHP APP微信提现接口代码
2018/09/30 PHP
JS、DOM和JQuery之间的关系示例分析
2014/04/09 Javascript
超链接的禁用属性Disabled使用示例
2014/07/31 Javascript
DOM基础教程之使用DOM控制表单
2015/01/20 Javascript
通过bootstrap全面学习less
2016/11/09 Javascript
JS中用childNodes获取子元素换行会产生一个子元素
2016/12/08 Javascript
jQuery EasyUI Accordion可伸缩面板组件使用详解
2017/02/28 Javascript
node.js 利用流实现读写同步,边读边写的方法
2017/09/11 Javascript
bootstrap可编辑下拉框jquery.editable-select
2017/10/12 jQuery
在nginx上部署vue项目(history模式)的方法
2017/12/28 Javascript
Nodejs下使用gm圆形裁剪并合成图片的示例
2018/02/22 NodeJs
nodejs+mongodb aggregate级联查询操作示例
2018/03/17 NodeJs
vuex 项目结构目录及一些简单配置介绍
2018/04/08 Javascript
JavaScript高级函数应用之分时函数实例分析
2018/08/03 Javascript
在Vuex使用dispatch和commit来调用mutations的区别详解
2018/09/18 Javascript
微信小程序实现打开并下载服务器上面的pdf文件到手机
2019/09/20 Javascript
优雅的使用javascript递归画一棵结构树示例代码
2019/09/22 Javascript
Vue 实现一个命令式弹窗组件功能
2019/09/25 Javascript
探索浏览器页面关闭window.close()的使用详解
2020/08/21 Javascript
Python实现从url中提取域名的几种方法
2014/09/26 Python
python实现查找excel里某一列重复数据并且剔除后打印的方法
2015/05/26 Python
Python Requests模拟登录实现图书馆座位自动预约
2018/04/27 Python
django ajax发送post请求的两种方法
2020/01/05 Python
关于Python解包知识点总结
2020/05/05 Python
使用Django的JsonResponse返回数据的实现
2021/01/15 Python
阿联酋航空假期:Emirates Holidays
2018/03/20 全球购物
高一家长会邀请函
2014/01/12 职场文书
化学教师教学反思
2014/01/17 职场文书
《宋庆龄故居的樟树》教学反思
2014/04/07 职场文书
领导班子作风建设年个人整改措施
2014/09/29 职场文书
就业推荐表院系意见
2015/06/05 职场文书
学生会招新宣传语
2015/07/13 职场文书
2019如何书写演讲稿?
2019/07/01 职场文书
500字作文之周记
2019/12/13 职场文书
golang通过递归遍历生成树状结构的操作
2021/04/28 Golang