搜索
出售我的作品
用户头像

又壹耳设计工作室

你还没有自我介绍哦~
用户头像

您还未登录

登录后即可体验更多功能
立即登录

搜索

搜索按钮
搜索历史
热门搜索
医疗
后台
电商
后台管理系统
CRM
ERP
大屏
您当前还不是平台作者,
立即申请成为作者?

温馨提示

本次下载需扣除1
剩余下载免费作品5
今日有效(每日获得1次)
当前剩余:1/1
 
永久有效(参与活动获得)
当前剩余:6/10
 
立即下载
获取更多下载次数
绑定手机号
发送验证码
根据《中华人民共和国网络安全法》要求,使用互联网服务需进行身份信息验证。请绑定手机号验证,感谢您的支持和理解
立即绑定

获取更多下载次数

免费下载产品原型,提高工作效率

添加小师妹微信
微信扫一扫添加
注意:添加完后记得刷新哦
复制以下链接地址,邀请好友访问
复制链接
客服头像
在 线 咨 询
象天尺客服二维码 微信扫一扫咨询 >
返回顶部

Axure 实现选取表格行、列交互

2024-01-29 发布 584 次浏览

在办公软件或富文本编辑器中插入表格的时候,我们经常可以看到如下交互:

Axure 实现选取表格行、列交互

通过在表格上移动鼠标,可以选取想要插入的表格行、列数,本文分享如何通过 Axure 实现这个交互。

这个交互的实现用到了中继器,所以首先在工作区拖入一个中继器元件,中继器內放一个矩形,并设置为每行10项水平分布:

Axure 实现选取表格行、列交互

再返回中继器外,在中继器上方放一段文本,默认文字为:插入表格:0行 * 0列。效果如下:

Axure 实现选取表格行、列交互

鼠标在中继器的矩形上移动时,填充了颜色的矩形是通过设置选中来实现的,因此这里需要先给中继器内的矩形设置选中时填充背景颜色的效果:

Axure 实现选取表格行、列交互

选中的逻辑与中继器内的数据有关,先来看一下中继器的结构和数据:

Axure 实现选取表格行、列交互

中继器共两个字段,selected 用来保存选中状态,0表示未选中,1表示选中,初始数据为0;num 用来保存一个数值,稍后会讲到它的用途,初始数据共有100个数值,分别是 1~10 重复10遍,这样就形成了一个 10*10 的表格,为了更加直观地呈现,我将每个矩形设置为显示 num 的数值,效果如下:

Axure 实现选取表格行、列交互

接下来添加交互,找到中继器內的矩形,给矩形添加载入时的交互,这个很简单,只需判断中继器中 selected 的值,如果等于1,选中当前矩形,如果等于0,则取消选中:

Axure 实现选取表格行、列交互

接下来就是选取表格的交互了,看到这里你应该可以想到,这个选中的交互实际上就是通过改变中继器中 selected 一列的值来实现的,问题的难点在于通过什么规则来改变数据。

我们可以先来观察一下,当我们将鼠标移动到第 6 行第 6 列上的矩形时,可以发现,所有被选中的矩形的数值(num)均小于或等于当前数值(num)。

Axure 实现选取表格行、列交互

但是,光靠这个规则来匹配的话,下方 7~ 10 行的 1~6 列也是满足的,因此,这里还需要补充一个规则,就是选中的目标矩形 index 要小于等于当前矩形的 index,这样两个条件共同作用,才能实现我们所需要的效果。

接下来给矩形添加鼠标移入的交互,以上述条件作为规则修改中继器 selected 的值:

Axure 实现选取表格行、列交互

配置后预览一下效果:

Axure 实现选取表格行、列交互

可以看到,移动时选中的效果实现了,但鼠标划到已经选中的表格区域内,已经选中的区域不会取消选中,因此在刚刚的事件中还需要添加一个交互,就是先将全部 selected 重置为0:

Axure 实现选取表格行、列交互

这样我们所需要的效果就实现了:

Axure 实现选取表格行、列交互

接下来看一下选取表格时上方的行列数是怎么实现的。首先通过单元格的数值,我们可以发现,当前的数值实际上就是选择的列数,这个比较简单。但行数跟这些数值好像没有什么直接关系,这里把数值(num)换成 index 看一下:

Axure 实现选取表格行、列交互

好像还是看不出来有什么关系,我们是 10*10 的表格,试一下将每个数值除以 10 看一下:

Axure 实现选取表格行、列交互

如果你对数字敏感,你会发现,最后一列的每个数值刚好就是当前的行数,但新问题又来了,前面的 9 列跟行数又有什么关系呢。如果此时我们再对每个数值向上取整,就会得到:

Axure 实现选取表格行、列交互

我想,这应该很直观,不用解释了吧。

在刚刚矩形的鼠标移入事件添加交互:

Axure 实现选取表格行、列交互

Math.ceil 函数可以对数值向上取整,最后只要去掉表格内的数值,就可以得到我们需要的效果:

Axure 实现选取表格行、列交互

以上便是本文的全部内容,感谢阅读!

收藏 收藏 收藏 0
阅读排行榜
    加载数据中...
声明:象天尺内网友所发表的所有内容及言论仅代表其本人,并不反映任何象天尺之意见及观点。
登录 后评论
全部评论
文章信息
创作时间
2024-01-29