微信小程序点击view动态添加样式过程解析


Posted in Javascript onJanuary 21, 2020

这篇文章主要介绍了微信小程序点击view动态添加样式过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

基本逻辑:

1.给每个view自定义dataIndex属性,从0开始

2.自定义一个名为selected的class,作为被选中后的样式

3.在wx.js中给viewId属性赋为0,用于默认显示。

4.给每个view添加一个点击事件select,在点击某个view时 将dataIndex变成这个view的自定义index

5.在view中添加一个三木运算符用于控制选中样式 {{dataIndex == 0 ? 'selected':''}}

附图:

wxml

<view class="ICONBOX {{viewId == 0 ? 'selected':''}} " bindtap="select" data-index= '0'>
   <view class="iconfont icon-haoping ic" ></view>好评
  </view>
  <view class="ICONBOX {{viewId == 1 ? 'selected':''}}" bindtap="select" data-index = '1'> 
   <view class="iconfont icon-zhongping ic"></view>中评
  </view>
  <view class="ICONBOX {{viewId == 2 ? 'selected':''}}" bindtap="select" data-index ='2'>
   <view class="iconfont icon-bottom-comment ic"></view>差评
  </view>

wxss

/* 表情盒子 */
 .ICONBOX{
  border: 1px solid red;
  display: flex;
  justify-content: space-around;
  /* flex-direction: */
  align-items: center;
  color: #999;
  font-size: 28rpx;
 }
 .ic{
  margin-right: 5rpx;
 }
 .selected{
  color: #f63
 }

wxjs

data: {
  
  viewId : 0
 },
select:function(e){
  this.setData({
   viewId: e.currentTarget.dataset.index
  })
 },

由于viewId初始值是0,所以会默认第一个切换了样式。

这样就完成了该事件:

微信小程序点击view动态添加样式过程解析

里面还有几个不足之处,时间仓促,暂且就这样写了。

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

Javascript 相关文章推荐
Javascript 面向对象(一)(共有方法,私有方法,特权方法)
May 23 Javascript
jquery实现文字由下到上循环滚动的实例代码
Aug 09 Javascript
jQuery的attr与prop使用介绍
Oct 10 Javascript
JavaScript的RequireJS库入门指南
Jul 01 Javascript
[原创]JQuery 在表单提交之前修改 提交的值
Apr 14 Javascript
JS+HTML5手机开发之滚动和惯性缓动实现方法分析
Jun 12 Javascript
微信小程序实现图片轮播及文件上传
Apr 07 Javascript
Vue EventBus自定义组件事件传递
Jun 25 Javascript
浅谈redux以及react-redux简单实现
Aug 28 Javascript
微信小程序 腾讯地图显示偏差问题解决
Jul 27 Javascript
解决vue 子组件修改父组件传来的props值报错问题
Nov 09 Javascript
vant picker+popup 自定义三级联动案例
Nov 04 Javascript
微信小程序如何实现radio单选框单击打勾和取消
Jan 21 #Javascript
微信小程序仿淘宝热搜词在搜索框中轮播功能
Jan 21 #Javascript
微信小程序swiper实现文字纵向轮播提示效果
Jan 21 #Javascript
jquery将信息遍历到界面上实例代码
Jan 21 #jQuery
微信浏览器下拉黑边解决方案 wScroollFix
Jan 21 #Javascript
修改vue源码实现动态路由缓存的方法
Jan 21 #Javascript
微信小程序图片自适应实现解析
Jan 21 #Javascript
You might like
实现dedecms全站URL静态化改造的代码
2007/03/29 PHP
安装PHP可能遇到的问题“无法载入mysql扩展” 的解决方法
2007/04/16 PHP
再推荐十款免费的php开发工具
2015/11/09 PHP
PHP生成图片验证码功能示例
2017/01/12 PHP
JS 控制小数位数的实现代码
2011/08/02 Javascript
jQuery.extend()的实现方式详解及实例
2013/06/29 Javascript
JavaScript语言核心数据类型和变量使用介绍
2013/08/23 Javascript
通过js获取div的background-image属性
2013/10/15 Javascript
BootstrapTable与KnockoutJS相结合实现增删改查功能【一】
2016/05/10 Javascript
Bootstrap选项卡与Masonry插件的完美结合
2016/07/06 Javascript
JavaScript蒙板(model)功能的简单实现代码
2016/08/04 Javascript
Javascript typeof与instanceof的区别
2016/10/18 Javascript
微信小程序 122100版本更新问题解决方案
2016/12/22 Javascript
微信小程序中使用wxss加载图片并实现动画效果
2018/08/13 Javascript
4 种滚动吸顶实现方式的比较
2019/04/09 Javascript
小程序rich-text组件如何改变内部img图片样式的方法
2019/05/22 Javascript
Async/Await替代Promise的6个理由
2019/06/15 Javascript
javascript 关于赋值、浅拷贝、深拷贝的个人理解
2019/11/01 Javascript
Vue解析剪切板图片并实现发送功能
2020/02/04 Javascript
Node.js API详解之 string_decoder用法实例分析
2020/04/29 Javascript
Vue 的双向绑定原理与用法揭秘
2020/05/06 Javascript
如何在VUE中使用vue-awesome-swiper
2021/01/04 Vue.js
javascript中layim之查找好友查找群组
2021/02/06 Javascript
python基础教程之循环介绍
2014/08/29 Python
pymongo给mongodb创建索引的简单实现方法
2015/05/06 Python
Python使用Paramiko模块编写脚本进行远程服务器操作
2016/05/05 Python
在Python 中实现图片加框和加字的方法
2019/01/26 Python
python实现一个函数版的名片管理系统过程解析
2019/08/27 Python
python颜色随机生成器的实例代码
2020/01/10 Python
捷克移动配件网上商店:ProMobily.cz
2019/03/15 全球购物
通信研究生自荐信
2014/02/01 职场文书
淘宝客服专员岗位职责
2014/04/11 职场文书
大学生通用个人自我评价
2014/04/27 职场文书
说好普通话圆梦你我他演讲稿
2014/09/21 职场文书
个人维稳承诺书
2015/05/04 职场文书
三十年再续同学情倡议书
2019/11/27 职场文书