微信小程序点击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 相关文章推荐
js判断undefined变量类型使用typeof
Jun 03 Javascript
解析jquery中的ajax缓存问题
Dec 19 Javascript
javascript框架设计读书笔记之种子模块
Dec 02 Javascript
JavaScript的this关键字的理解
Jun 18 Javascript
JavaScript计算器网页版实现代码分享
Jul 15 Javascript
angular+bootstrap的双向数据绑定实例
Mar 03 Javascript
Bootstrap实现翻页效果
Nov 27 Javascript
详解vue 路由跳转四种方式 (带参数)
Apr 28 Javascript
vue子路由跳转实现tab选项卡
Jul 24 Javascript
layui.tree组件的使用以及搜索节点功能的实现
Sep 26 Javascript
layui实现数据表格自定义数据项
Oct 26 Javascript
vue中解决chrome浏览器自动播放音频和MP3语音打包到线上的实现方法
Oct 09 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
生成静态页面的PHP类
2006/11/25 PHP
php对二维数组按指定键值key排序示例代码
2013/11/26 PHP
PHP连接MSSQL方法汇总
2016/02/05 PHP
PHP实现的贪婪算法实例
2017/10/17 PHP
javascript中callee与caller的用法和应用场景
2010/12/08 Javascript
检测input每次的输入是否合法遇到汉字输入就有问题
2012/05/23 Javascript
js中for in的用法示例解析
2013/12/25 Javascript
jquery自定义函数的多种方法
2014/01/09 Javascript
jquery插件开发之实现jquery手风琴功能分享
2014/03/10 Javascript
JavaScript中实现最高效的数组乱序方法
2014/10/11 Javascript
Node.js中的流(Stream)介绍
2015/03/30 Javascript
BootStrap智能表单实战系列(十一)级联下拉的支持
2016/06/13 Javascript
Javascript中indexOf()和lastIndexOf应用方法实例
2016/08/24 Javascript
vue移动端裁剪图片结合插件Cropper的使用实例代码
2017/07/10 Javascript
JS原生带小白点轮播图实例讲解
2017/07/22 Javascript
微信小程序实现下拉刷新和轮播图效果
2017/11/21 Javascript
vue基于mint-ui实现城市选择三级联动
2020/06/30 Javascript
bootstrap 路径导航 分页 进度条的实例代码
2018/08/06 Javascript
vue升级之路之vue-router的使用教程
2018/08/14 Javascript
vue eslint简要配置教程详解
2019/07/26 Javascript
jquery实现购物车基本功能
2019/10/25 jQuery
js实现图片上传到服务器和回显
2020/01/19 Javascript
ES2020让代码更优美的运算符 (?.) (??)
2021/01/04 Javascript
Python探索之pLSA实现代码
2017/10/25 Python
python 通过类中一个方法获取另一个方法变量的实例
2019/01/22 Python
Python实现K折交叉验证法的方法步骤
2019/07/11 Python
Python使用Tkinter实现滚动抽奖器效果
2020/01/06 Python
一文读懂Python 枚举
2020/08/25 Python
Python中Yield的基本用法
2020/10/18 Python
自我鉴定200字
2013/10/28 职场文书
揭牌仪式策划方案
2014/05/28 职场文书
学历证明范文
2015/06/16 职场文书
婚庆主持词大全
2015/06/30 职场文书
2019年幼儿园家长接送责任书
2019/10/29 职场文书
springboot + mongodb 通过经纬度坐标匹配平面区域的方法
2021/11/01 MongoDB
联想win10摄像头打不开怎么办?win10笔记本摄像头打不开解决办法
2022/04/08 数码科技