外卖点餐列表滑动 微信小程序_微信小程序实现类似外卖平台右侧商品滑动时,左侧分类导航栏的相应分类被选中...

本文介绍如何在微信小程序中实现外卖点餐列表的联动效果,当右侧商品列表滑动时,左侧导航栏的相应分类自动选中。通过使用scroll-view组件的scroll-into-view属性和bindscroll事件,结合wx.createSelectorQuery()获取节点位置信息来实现这一功能。
摘要由CSDN通过智能技术生成

左侧导航栏与右侧商品列表相互联动,类似喜茶这种联动效果

image.png

实现思路:

1.使用组件scroll-view的属性scroll-into-view(值应为某子元素id,id不能以数字开头)。设置哪个方向可滚动,则在哪个方向滚动到该元素),实现点击左侧导航分类,右侧滑动到相应商品(这个比较简单,调动API即可实现)

2.使用组件scroll-view的bindscroll事件(滚动时触发)获取右侧商品列表父元素scroll-view卷上去的高度e.detail.scrollTop,使用wx.createSelectorQuery()和boundingClientRect方法(添加节点的布局位置的查询请求)获取右侧商品列表里每一块子元素节点的高度(height)和距离父元素上边界距离(上边界坐标top),右侧列表滚动时,遍历右侧商品列表项,当父元素卷上去的高度>=子元素上边界坐标,并且<=子元素上边界坐标加子元素的高度时,获取当前区域的商品分类id,赋值给左侧选中项id

具体代码:

{ {item.name}}

{ {item.cateName}}

{ {goodsItem.goodsName}}

¥{ {goodsItem.goodsPayprice}}

var that;

Page({

data:{

// 左侧菜单列表

leftClassesMenuList: [],

// 左侧菜单选中item

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值