微信小程序switch组件使用详解


Posted in Javascript onJanuary 31, 2018

本文实例为大家分享了微信小程序switch组件的实现代码,供大家参考,具体内容如下

效果图

微信小程序switch组件使用详解

HTML

<div class="switch-list">
 <span class="fui-fr">红色switch组件</span>
 <input class="fui-switch" style="color:rgb(255, 0, 0);" type="checkbox" checked>
</div>
<div class="switch-list">
 <span class="fui-fr">绿色switch组件</span>
 <input class="fui-switch" style="color:rgb(76, 216, 100);" type="checkbox" checked>
</div>
<div class="switch-list">
 <span class="fui-fr">绿色禁用switch组件</span>
 <input class="fui-switch" style="color:rgb(76, 216, 100);" type="checkbox" checked disabled>
</div>
<div class="switch-list">
 <span class="fui-fr">蓝色switch组件---开</span> 
 <input class="fui-switch" style="color:blue" type="checkbox" checked>
</div>
<div class="switch-list">
 <span class="fui-fr">蓝色switch组件---关</span> 
 <input class="fui-switch" style="color:blue" type="checkbox">
</div>

CSS

.switch-list{
 padding: .5rem;
}
.fui-switch{
 position: relative;
 width: .87rem;
 height: .5rem;
 z-index: 10;
 display: inline-block;
 outline: medium;
 border: 1px solid #dfdfdf;
 border-radius: .25rem;
 background-color: #dfdfdf;
 -webkit-appearance: none;
 -moz-appearance: none;
 vertical-align: middle;
}
.fui-switch:checked{
 border-color: currentColor;
 background-color: currentColor;
}
.fui-switch::after,.fui-switch::before{
 content: "";
 position: absolute;
 height: .44rem;
 top: 0;
 left: 0;
 border-radius: .25rem;
 -webkit-transition: -webkit-transform .3s;
 transition: -webkit-transform .3s;
 transition: transform .3s;
 transition: transform .3s,-webkit-transform .3s;
}
.fui-switch:before {
 width: .84rem;
 background-color: #fdfdfd;
}
.fui-switch:checked:before {
 -webkit-transform: scale(0);
 transform: scale(0);
}
.fui-switch:after {
 width: .44rem;
 background-color: #fff;
 box-shadow: 0 1px 3px rgba(0,0,0,.4);
}
.fui-switch:checked:after {
 -webkit-transform: translateX(.4rem);
 transform: translateX(.4rem);
}
.fui-switch[disabled] {
 opacity: .5;
}
.fui-fr{font-size: .3rem;vertical-align: middle;}

实现rem的JS

(function(win,factory){
 factory(win);
 window.addEventListener('resize',function(){factory(win)},false);
}(window,function(win){
 var width = document.documentElement.clientWidth;
 width = width > 750 ? 750 : width;
 document.documentElement.style.fontSize = width / 7.5 + 'px';
}));

注意

此处 1rem 在 750 的 psd 设计图代表 100px ;
switch 的切换动画是通过 CSS3 的 transition 属性实现;
主要是控制 switch 的 after 的移动,以及 before 的放大缩小动画。

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

Javascript 相关文章推荐
JS中图片缓冲loading技术的实例代码
Aug 29 Javascript
各种页面定时跳转(倒计时跳转)代码总结
Oct 24 Javascript
js控制input框只读实现示例
Jan 20 Javascript
JS对字符串编码的几种方式使用指南
May 14 Javascript
第四章之BootStrap表单与图片
Apr 25 Javascript
JavaScript字符串对象(string)基本用法示例
Jan 18 Javascript
常用的 JS 排序算法 整理版
Apr 05 Javascript
JavaScript:ES2019 的新特性(译)
Aug 08 Javascript
jquery实现直播弹幕效果
Nov 28 jQuery
JavaScript canvas实现跟随鼠标事件
Feb 10 Javascript
处理JavaScript值为undefined的7个小技巧
Jul 28 Javascript
Vue两种组件类型:递归组件和动态组件的用法
Aug 06 Javascript
vue项目中导入swiper插件的方法
Jan 30 #Javascript
微信小程序实现手势图案锁屏功能
Jan 30 #Javascript
简单理解Vue中的nextTick方法
Jan 30 #Javascript
Vue组件中slot的用法
Jan 30 #Javascript
vue初尝试--项目结构(推荐)
Jan 30 #Javascript
JS实现的邮箱提示补全效果示例
Jan 30 #Javascript
JS实现的抛物线运动效果示例
Jan 30 #Javascript
You might like
PHP中实现进程间通讯
2006/10/09 PHP
php ci框架中加载css和js文件失败的解决方法
2014/03/03 PHP
php截取html字符串及自动补全html标签的方法
2015/01/15 PHP
php简单实现多维数组排序的方法
2016/09/30 PHP
PHP多维数组元素操作类的方法
2016/11/14 PHP
深入理解PHP的远程多会话调试
2017/09/21 PHP
Js 获取Gridview选中行的内容操作步骤
2013/02/05 Javascript
JavaScript将取代AppleScript?
2014/09/18 Javascript
jquery获取checkbox的值并post提交
2015/01/14 Javascript
require.js的用法详解
2015/10/20 Javascript
js数组常见操作及数组与字符串相互转化实例详解
2015/11/10 Javascript
基于jQuery实现仿搜狐辩论投票动画代码(附源码下载)
2016/02/18 Javascript
javascript url几种编码方式详解
2016/06/06 Javascript
JS实现类似百叶窗下拉菜单效果
2016/12/30 Javascript
easyui datebox 时间限制,datebox开始时间限制结束时间,datebox截止日期比起始日期大的实现代码
2017/01/12 Javascript
通过一个简单的例子学会vuex与模块化
2017/11/22 Javascript
json对象及数组键值的深度大小写转换问题详解
2018/03/30 Javascript
Vue实现用户自定义字段显示数据的方法
2018/08/28 Javascript
基于vue.js实现购物车
2020/01/15 Javascript
python模拟enum枚举类型的方法小结
2015/04/30 Python
python 判断网络连通的实现方法
2018/04/22 Python
python按修改时间顺序排列文件的实例代码
2019/07/25 Python
python cv2在验证码识别中应用实例解析
2019/12/25 Python
pandas的相关系数与协方差实例
2019/12/27 Python
可自定义箭头样式的CSS3气泡提示框
2016/03/16 HTML / CSS
Reebok俄罗斯官方网上商店:购买锐步运动服装和鞋子
2016/09/26 全球购物
UGG雪地靴德国官网:UGG德国
2016/11/19 全球购物
台湾母婴用品限时团购:妈咪爱
2018/08/03 全球购物
Java如何调用外部Exe程序
2015/07/04 面试题
2014年3.15团委活动总结
2014/03/16 职场文书
环卫工人先进事迹材料
2014/06/02 职场文书
2014教师专业技术工作总结
2014/12/03 职场文书
周年庆典答谢词
2015/01/20 职场文书
个人借条范本
2015/05/25 职场文书
信息技术课教学反思
2016/02/23 职场文书
Python合并多张图片成PDF
2021/06/09 Python