微信小程序点击控件修改样式实例详解


Posted in Javascript onJuly 07, 2017

微信小程序点击控件修改样式实例详解

现在要在微信小程序中实现点击控件修改样式,如下:

微信小程序点击控件修改样式实例详解

微信小程序中不支持直接操作dom,要实现这种效果,我们需要通过设置data,然后利用数据和界面的双向绑定来实现它。

第一步:在wxss中定义被点击和未被点击的样式,如下:

.service_selection .is_checked{ 
 border: 1px solid #FE0002 ; 
 color: #FE0002 ; 
 background: #fff; 
} 
.service_selection .normal{ 
 border: none; 
 color: #333; 
 background: #F0F1EC; 
}

第二步:在js文件中的data中设置一个flag,叫他isChecked,默认isChecked==false。如下:

data: { 
  isChecked: false 
 }

第三步:在wxml文件中绑定点击事件,

<view bindtap="serviceSelection"></view>

在js文件中实现这个方法,并另他点击后设置isChecked==true。如下:

serviceSelection(){ 
  this.setData({ 
   isChecked:true 
  }) 
}

第四步:依然是在wxml文件中进行数据绑定:

<view class="{{isChecked?'is_checked':'normal'}}" bindtap="serviceSelection"></view>

重点是这一句代码

{{isChecked?'is_checked':'normal'}}"

这是一个三目运算符,当isChecked==true时,在class加上is_checked的样式,为flase时使用normal的样式。这一点的实现类似php控制样式类名的语法。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
jquery 学习笔记一
Apr 07 Javascript
jquery 查找select ,并触发事件的实现代码
Mar 30 Javascript
jQuery UI Autocomplete 体验分享
Feb 14 Javascript
文本框输入时 实现自动提示(像百度、google一样)
Apr 05 Javascript
ExtJS下书写动态生成的xml(兼容火狐)
Apr 02 Javascript
jQuery和AngularJS的区别浅析
Jan 29 Javascript
js实现的牛顿摆效果
Mar 31 Javascript
IE10中flexigrid无法显示数据的解决方法
Jul 26 Javascript
AngularJS equal比较对象实例详解
Sep 14 Javascript
微信小程序 网络请求(GET请求)详解
Nov 16 Javascript
jQuery实现手风琴效果(蒙版)
Jan 11 jQuery
解决vue与node模版引擎的渲染标记{{}}(双花括号)冲突问题
Sep 11 Javascript
利用C/C++编写node.js原生模块的方法教程
Jul 07 #Javascript
利用types增强vscode中js代码提示功能详解
Jul 07 #Javascript
protractor的安装与基本使用教程
Jul 07 #Javascript
vue.js实例todoList项目
Jul 07 #Javascript
微信JSAPI Ticket接口签名详解
Jun 28 #Javascript
Angular.js自动化测试之protractor详解
Jul 07 #Javascript
vue.js全局API之nextTick全面解析
Jul 07 #Javascript
You might like
使用PHP批量生成随机用户名
2008/07/10 PHP
php获取某个目录大小的代码
2008/09/10 PHP
ThinkPHP采用模块和操作分析
2011/04/18 PHP
比较简单实用的PHP无限分类源码分享(思路不错)
2011/10/13 PHP
PHP输出日历表代码实例
2015/03/27 PHP
解决更换PHP5.4以上版本后Dedecms后台登录空白问题的方法
2015/10/23 PHP
yii用户注册表单验证实例
2015/12/26 PHP
php array_pop 删除数组最后一个元素实例
2016/11/02 PHP
深入理解PHP的远程多会话调试
2017/09/21 PHP
jquery post方式传递多个参数值后台以数组的方式进行接收
2013/01/11 Javascript
详解JavaScript函数绑定
2013/08/18 Javascript
自己写的Javascript计算时间差函数
2013/10/28 Javascript
jQuery中contents()方法用法实例
2015/01/08 Javascript
jquery+ajax+text文本框实现智能提示完整实例
2016/07/09 Javascript
清除输入框内的空格
2016/12/21 Javascript
聊聊那些使用前端Javascript实现的机器学习类库
2017/09/18 Javascript
讲解vue-router之什么是嵌套路由
2018/05/28 Javascript
监听angularJs列表数据是否渲染完毕的方法示例
2018/11/07 Javascript
vue axios请求频繁时取消上一次请求的方法
2018/11/10 Javascript
用WebStorm进行Angularjs 2开发(环境篇:Windows 10,Angular-cli方式)
2018/12/05 Javascript
发布一款npm包帮助理解npm的使用
2019/01/03 Javascript
vueScroll实现移动端下拉刷新、上拉加载
2019/03/22 Javascript
vue-cli history模式实现tomcat部署报404的解决方式
2019/09/06 Javascript
python中函数默认值使用注意点详解
2016/06/01 Python
Django rest framework基本介绍与代码示例
2018/01/26 Python
pycharm快捷键汇总
2020/02/14 Python
matlab中二维插值函数interp2的使用详解
2020/04/22 Python
CSS3中Transition动画属性用法详解
2016/07/04 HTML / CSS
威盛公司软件C++工程师笔试题面试题
2012/07/16 面试题
进口业务员岗位职责
2014/04/06 职场文书
幼儿园父亲节活动总结
2015/02/12 职场文书
工作态度恶劣检讨书
2015/05/06 职场文书
老兵退伍感言
2015/08/03 职场文书
MySQL sql_mode修改不生效的原因及解决
2021/05/07 MySQL
浅谈MySQL函数
2021/10/05 MySQL
vue整合百度地图显示指定地点信息
2022/04/06 Vue.js