微信小程序点击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 按回车键相应按钮提交事件
Nov 02 Javascript
按下Enter焦点移至下一个控件的实现js代码
Dec 11 Javascript
BootstrapTable与KnockoutJS相结合实现增删改查功能【二】
May 10 Javascript
异步加载JS、CSS代码(推荐)
Jun 15 Javascript
检查表单元素的值是否为空的实例代码
Jun 16 Javascript
微信小程序 后台https域名绑定和免费的https证书申请详解
Nov 10 Javascript
基于vue监听滚动事件实现锚点链接平滑滚动的方法
Jan 17 Javascript
vue微信分享的实现(在当前页面分享其他页面)
Apr 16 Javascript
es6函数之尾递归用法实例分析
Apr 25 Javascript
JS 设计模式之:单例模式定义与实现方法浅析
May 06 Javascript
javascript实现前端成语点击验证优化
Jun 24 Javascript
Vue 实现对quill-editor组件中的工具栏添加title
Aug 03 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/10/09 PHP
mysql5写入和读出乱码解决
2006/11/25 PHP
一些PHP Coding Tips(php小技巧)[2011/04/02最后更新]
2011/05/02 PHP
set_exception_handler函数在ThinkPHP中的用法
2014/10/31 PHP
php简单统计中文个数的方法
2016/09/30 PHP
php批量转换文件夹下所有文件编码的函数类
2017/08/06 PHP
laravel 5异常错误:FatalErrorException in Handler.php line 38的解决
2017/10/12 PHP
PHP设计模式之适配器模式原理与用法分析
2018/04/25 PHP
Jquery ajax不能解析json对象,报Invalid JSON错误的原因和解决方法
2010/03/27 Javascript
js 父窗口控制子窗口的行为-打开,关闭,重定位,回复
2010/04/20 Javascript
如何确保JavaScript的执行顺序 之实战篇
2011/03/03 Javascript
jQuery使用技巧简单汇总
2013/04/18 Javascript
js局部刷新页面时间具体实现
2013/07/04 Javascript
jQuery实现div拖拽效果实例分析
2016/02/20 Javascript
json实现添加、遍历与删除属性的方法
2016/06/17 Javascript
js中判断变量类型函数typeof的用法总结
2016/08/09 Javascript
JS编写函数实现对身份证号码最后一位的验证功能
2016/12/29 Javascript
vue-cli如何快速构建vue项目
2017/04/26 Javascript
JavaScript 中的 this 工作原理
2018/06/20 Javascript
对Vue table 动态表格td可编辑的方法详解
2018/08/28 Javascript
详解Vue之父子组件传值
2019/04/01 Javascript
Python计算回文数的方法
2015/03/11 Python
Python中scatter函数参数及用法详解
2017/11/08 Python
Python Selenium 之关闭窗口close与quit的方法
2019/02/13 Python
详解Python3 pandas.merge用法
2019/09/05 Python
Python生态圈图像格式转换问题(推荐)
2019/12/02 Python
django列表筛选功能的实现代码
2020/03/27 Python
Bonami斯洛伐克:购买家具和家居饰品
2019/07/02 全球购物
澳大利亚Mocha官方网站:包、钱包、珠宝和配饰
2019/07/18 全球购物
如何写好建议书
2014/03/13 职场文书
仓库规划计划书
2014/04/28 职场文书
房屋鉴定委托书范本
2014/09/23 职场文书
优秀英文求职信范文
2015/03/19 职场文书
老公出轨后的保证书
2015/05/08 职场文书
初中数学教学反思范文
2016/02/17 职场文书
Python线程池与GIL全局锁实现抽奖小案例
2022/04/13 Python