微信小程序点击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代码
Mar 11 Javascript
javascript 命名规则 变量命名规则
Feb 25 Javascript
前后台交互过程中json格式如何解析以及如何生成
Dec 26 Javascript
js验证电话号码与手机支持+86的正则表达式
Jan 23 Javascript
javascript中数组和字符串的方法对比
Jul 20 Javascript
在node.js中怎么屏蔽掉favicon.ico的请求
Mar 01 Javascript
原生js中ajax访问的实例详解
Sep 19 Javascript
JS 封装父页面子页面交互接口的实例代码
Jun 25 Javascript
Weex开发之地图篇的具体使用
Oct 16 Javascript
微信公众号服务器验证Token步骤图解
Dec 30 Javascript
JavaScript本地储存:localStorage、sessionStorage、cookie的使用
Oct 13 Javascript
基于jQuery拖拽事件的封装
Nov 29 jQuery
微信小程序如何实现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
用文本作数据处理
2006/10/09 PHP
php 更新数据库中断的解决方法
2009/06/05 PHP
对PHP PDO的一些认识小结
2015/01/23 PHP
php微信公众号开发之现金红包
2018/04/16 PHP
php文件上传原理与实现方法详解
2019/12/20 PHP
Javascript String.replace的妙用
2009/09/08 Javascript
js去除重复字符串两种实现方法
2013/01/09 Javascript
在JavaScript并非所有的一切都是对象
2013/04/11 Javascript
javascript HTML5 canvas实现打砖块游戏
2020/06/18 Javascript
JavaScript判断用户名和密码不能为空的实现代码
2016/05/16 Javascript
javascript入门之数组[新手必看]
2016/11/21 Javascript
webpack踩坑之路图片的路径与打包
2017/09/05 Javascript
JS实现元素上下左右移动效果
2017/10/18 Javascript
vue debug 二种方法
2018/09/16 Javascript
python制作一个桌面便签软件
2015/08/09 Python
Python使用win32com实现的模拟浏览器功能示例
2017/07/13 Python
关于django 数据库迁移(migrate)应该知道的一些事
2018/05/27 Python
python numpy 按行归一化的实例
2019/01/21 Python
pytorch 模型的train模式与eval模式实例
2020/02/20 Python
解决pymysql cursor.fetchall() 获取不到数据的问题
2020/05/15 Python
python代码中怎么换行
2020/06/17 Python
解决Pycharm双击图标启动不了的问题(JetBrains全家桶通用)
2020/08/07 Python
python 实现波浪滤镜特效
2020/12/02 Python
前端canvas水印快速制作(附完整代码)
2019/09/19 HTML / CSS
BCBG官网:BCBGMAXAZRIA
2017/12/29 全球购物
汉米尔顿手表官网:Hamilton
2020/09/13 全球购物
小车司机岗位职责
2013/11/25 职场文书
元宵节主持词
2014/03/25 职场文书
《她是我的朋友》教学反思
2014/04/26 职场文书
商业融资计划书
2014/04/29 职场文书
七夕情人节促销方案
2014/06/07 职场文书
离婚协议书标准格式
2014/10/04 职场文书
新教师个人工作总结
2015/02/06 职场文书
2015年社区科普工作总结
2015/05/13 职场文书
教你使用一行Python代码玩遍童年的小游戏
2021/08/23 Python
未发现nvidia显卡怎么办?Win11系统中未检测到nvidia显卡解决教程
2022/04/08 数码科技