起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4155|回复: 0

[分享] 点击list组件,触发css样式的分享。

[复制链接]

131

主题

596

帖子

1205

积分

金牌会员

Rank: 6Rank: 6

积分
1205
QQ
发表于 2018-6-7 20:18:49 | 显示全部楼层 |阅读模式
问题描述:手机端页面使用list组件做布局,其中嵌套panel组件。为了稍微提升用户体验,想要点击list中任意一条数据后,就触发自定义的css样式的效果。
1.png 2.png 3.png

方法1:只需要在li标签的bind-css属性中填入:{'bg-red':$model.baasData5.currentRow.get()==$object}即可。其中bg-red为自定义的css样式,而$model.baasData5.currentRow.get()==$object的返回值为true,我的理解是如果当前行的对象在渲染的object中存在,那么返回true,即触发bg-red的自定义css,否则不触发任何css样式。(附图)
4.png

方法2:通过li组件的click事件,首jQuery获取li标签内的数组,以遍历数组的方式,初始它的样式为空,然后对当前点击的li进行单独渲染即可。
补充:调试的时候遇到个问题,document.getElementsByTagName("li2").length=0,它竟然是0,那如何遍历。。
解决:li组件属性栏的右上角,"添加自定义属性",属性名是name,属性值是xxx
5.png

然后,click事件中键入下图代码即可
6.png

其中,xxxs是获取所有标签类型是li,属性值是name的数组集合,随后对它进行遍历,其中li为数组的节点,对节点的style属性设置为'',这样一来,就没有css样式的效果啦,随后跳出循环,
用event.currentTarget.setAtt.....的方法设置当前元素节点的点击样式即可。:D
大神们要多多滴帮我解决问题喔!(*  ̄3)(ε ̄ *)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-4-19 18:24 , Processed in 0.067697 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表