关于数据列表实现隔行换色效果

  • • 发表于 8年前
  • • 作者 翔
  • • 5914 人浏览
  • • 12 条评论
  • • 最后编辑时间 8年前
  • • 来自 [技 术]

原创声明:本文为作者原创,未经允许不得转载,经授权转载需注明作者和出处

针对于数据列表,相隔行不同的背景色,以便区分的效果。
在CSS中称为隔行换色 实现代码为以下,但在小程序不起作用。只能换种思路来解决
CSS传统写法(在小程序中不起作用):
#div li:nth-of-type(odd){background:#00CCFF;}/*奇数行*/
#div li:nth-of-type(even){background:#FFCC00;}/*偶数行*/

有三种方式可以解决此问题(其实三种基础同样原理,利用数据进行判断加载)
1.利用数据判断加载不同CSS样式来达到效果,即如果后台传一个识别判断列数据到前端,前端根据此变量数据来判断是加载哪一种CSS样式(重点讲解此方式并推荐)
2.利用wx:if来判断加载哪一个View
3.利用wx:for中的属性index来作判断以作加载哪种样式 {{index%2==0 ? ‘vwdataeven’ : ‘vwdataodd’}}(谢谢刘冰华同志提供的更为简洁的方式)
1.利用数据判断加载不同CSS样式
首先在wxss文件中定义两个不同的背景色的CSS样式

.vwdataodd{ /*奇数行*/ background-color: #292421; }
.vwdataeven{ /*偶数行*/ background-color: #1D1D26; }

其次在js文件中定义一个变量,把整个需要加载的数据排列定义一个行号赋上

最后在wxml文件中进行判断处理即可

2.利用数据加载不同的view

3.利用wx:for属性中的index来作判断

效果图:

分享到:
12条评论
Ctrl+Enter
作者

翔

APP:2 帖子:8 回复:60 积分:1214

已加入社区[2939]天

主人太懒,签名没设置!

作者详情》
Top