uniapp使用scroll-view实现菜单的左联右和右联左

article/2025/9/17 6:19:30

 

左联右

<!-- 左 菜品分类--><view class="order-left"><scroll-view scroll-y="true" class="scroll-Hei" :scroll-with-animation="true" :enhanced="true":show-scrollbar="false"><block v-for="(item,index) in categoryList" :key="index"><view class="itemize-text" :class="{active: index == trigger}"@click="itemIze(index,item.id)"><text class="order_value">{{item.name}}</text></view></block></scroll-view></view>

data定义变量trigger,添加动态class,

scroll_into: '', //值应为某子元素id(id不能以数字开头)。设置哪个方向可滚动,则在哪个方向滚动到该元素

在点击左侧菜单的时候给trigger赋值,完成右侧商品的滑动

// 点击左侧菜品分类加上背景色itemIze(index, id) {// console.log('点击左侧',index,id)this.trigger = indexthis.scroll_into = 'a' + index// console.log('id不能为数字',this.scroll_into)setTimeout(() => {this.scroll_into = ''}, 200)},

 右联左

 这里的id就是关联左联右,class类名在计算菜单分类高度会用到

计算左侧菜单分类高度

注意:这里需要设置一个延时器,因为一开始进来页面加载完毕左侧调用函数时可能会失败未加载完成,所以需要延时器

// 计算右边每个分类菜品的高度goodsHeight() {setTimeout(()=>{let cate_height = 0const query = uni.createSelectorQuery()// console.log('节点信息', query)query.selectAll('.rig-height').boundingClientRect()query.exec((res) => {// console.log('节点信息下的res', res)res[0].forEach((item) => {// console.log('res[0]的item', item)cate_height += item.heightthis.heightArr.push(cate_height)// console.log('菜品的高度', this.heightArr)})this.exist = false})},1000)},

右边商品滚动时触发

scroLl(e) {// console.log('右边菜品滚动时触发e',e)let scrollTop = e.detail.scrollTop;// console.log('右边触发scrollTope',scrollTop)let scrollArr = this.heightArr;// console.log('右侧高度',scrollArr)if (scrollTop >= scrollArr[scrollArr.length - 1] -this.pageHeight) {console.log('return')return} else {for (let i = 0; i < scrollArr.length; i++) {if (scrollTop >= 0 && scrollTop < scrollArr[0]) {// console.log('0个')this.scroll_into = 'a0'this.trigger = 0} else if (scrollTop >= scrollArr[i-1] && scrollTop < scrollArr[i]) {// console.log('下一个',i)this.scroll_into = "a"+ithis.trigger = i// console.log('下一个i',this.scroll_into)}}}},

到这里基本就已经完成了右联左


http://chatgpt.dhexx.cn/article/xFH8ZLbY.shtml

相关文章

join操作-内联,左外联,右外联,交叉联,全联

在数据库中新建三张表格&#xff1a; T1 T2 T3 普通查询&#xff1a; select * from T1, T3 where T1.user_id T3.user_id 结果&#xff1a; --------------------------------------------------------------- join就是把两张表格等效当做一张表来查 内联(inner join)&a…

mysql的左联、右联、内联查询

内联查询&#xff1a;where会作用到两张表 左联查询&#xff1a;where作用在右表&#xff0c;左表全部数据都会被检索出来&#xff0c;右表只有满足where里面条件的才会被检索出来 右联查询&#xff1a;where作用在左表&#xff0c;右表全部数据都会被检索出来&#xff0c;左表…

SQL关联查询(左联,右联,内联,外联,自关联)

在使用数据库查询语句时&#xff0c;单表的查询有时候不能满足项目的业务需求&#xff0c;在项目开发过程中&#xff0c;有很多需求都是要涉及到多表的连接查询&#xff0c;总结一下mysql中的多表关联查询 一&#xff0c;内连接查询 是指所有查询出的结果都是能够在连接的表中…

SQL中,表之间的左联和右联是什么意思

首先来看张图片&#xff1a; 定义&#xff1a; 左联&#xff1a;首先取出A表中所有数据&#xff0c;然后再加上A、B表通过关联字段key查询到的数据 右联&#xff1a;首先取出B表中所有数据&#xff0c;然后再加上A、B表通过关联字段key查询到的数据 内联&#xff1a;查询A、…

数据库内联、左联和外联的区别

INNER JOIN&#xff08;内联&#xff09;&#xff1a;两个表a,b 相连接&#xff0c;取出符合连接条件的数据&#xff0c;数据集C LEFT JOIN&#xff08;左联&#xff09;&#xff1a;先返回左表的所有行&#xff0c;再加上符合连接条件的匹配行&#xff0c;数据集A1数据集C R…

RDD、矩阵基础——3. 矩阵、向量(Breeze、BLAS)

MLlib库底层的Vector&#xff08;向量&#xff09;、Matrix&#xff08;矩阵&#xff09;运算使用了 Breeze库和BLAS库。 Breeze库提供了相应计算的接口&#xff08;Linalg&#xff09;。 但是在MLlib里面同时也提供了Vector和Linalg等的实现。 BLAS&#xff08;线性代数运…

WARNING (theano.tensor.blas): Using NumPy C-API based implementation for BLAS functions.

&#xff08;WARNING : Using NumPy C-API based implementation for BLAS functions&#xff09;的解决方案 情况说明问题的解决第一步&#xff1a;使用CMD安装类库第二步&#xff1a;在用户目录下放置一个文件 验证 情况说明 再训练生成对抗网络GAN时&#xff0c;需要Pylear…

BLAS之GEMM和GEMV

BLAS简介 BLAS全称是Basic Linear Algebra Subprograms是规定了一套低级的执行常见线性代数操作的规范。其实现经常针对特殊的机器进行优化&#xff0c;比较著名的BLAS库有ACML, ATLAS, MKL, OpenBLAS。许多常见的数值软件均采用兼容BLAS规范的实现库来进行线性代数计算&#…

linux编译blas,科学网—Linux下安装blas和lapack包小记 - 徐博伦的博文

系统是centOS6.5&#xff0c;机器上已有gfortran编译器 从网上搜索下载blas、cblas、lapack的tar压缩文件包 1.编译blas 先解压文件 tar xvf blas.tgz cd blas #blas的解压文件夹 gfortran -c -O3 *.f #编译生成.o执行文件 ar rv libblas.a *.o #链接所有的 .o文件&#xff0…

BLAS学习

导师突然通知要开始关于blas的讨论班&#xff0c;之前甚至都没听说过blas这个词&#xff0c;又要开始新一波的锤炼小白之路了… 1. BLAS简介 首先BLAS的全称是 Basic Linear Algebra Subprograms&#xff0c;即 基础线性代数子程序库&#xff0c;其中包含了一系列基本的线性代…

android 您的手机上未安装应用程序的解决方法

android 创建桌面快捷方式的时候设置应用名称和图标是完全没有问题&#xff0c;但是点击快捷方式的时候出现“您的手机上未安装应用程序“&#xff0c;这是快捷方式的执行目标设置错误&#xff0c;也就是启动Activity。有些应用的启动Activity是欢迎界面&#xff0c;创建快捷方…

android显示应用程序未安装,如何解决安卓系统显示应用程序未安装

我们在安装软件的时候经常会遇到应用程序未安装这个问题&#xff0c;尤其是在更新软件或者是从ROM提取出来的软件会出现这样的问题。那我们该如何处理这个问题呢&#xff1f;下面我就为大家列举几个解决这种问题的办法。 产生应用程序未安装的原因 软件签名不一致。这种情况一般…

什么是android应用程序未安装,应用程序未安装,教您安卓系统应用程序未安装怎么解决...

大家在使用智能手机的时候&#xff0c;尤其是安卓系统的手机&#xff0c;在安装应用程序&#xff0c;也就是App的时候&#xff0c;有时会提示“应用程序未安装”&#xff0c;相信很多使用安卓机器的朋友都曾遇到过“应用程序未安装”的问题&#xff0c;但是懂得解决的用户并不多…

android studio AVD模拟器安装某些app出现 “app not installed(未安装应用程序)”的问题

android studio AVD模拟器安装某些app出现 “app not installed(未安装应用程序)”的问题 参考&#xff1a; 安装apk时出现INSTALL_FAILED_NO_MATCHING_ABIS&#xff1f;Android 开发之 INSTALL_FAILED 汇集表 问题说明 在为安卓模拟器中android 11版本的系统安装一些常用软…

一加5应用未安装怎么解决_应用程序未安装怎么解决 手机提示应用程序未安装解决办法...

安卓手机系统的应用繁多&#xff0c;丰富人们使用体验的同时&#xff0c;有时候还会出现种种问题&#xff0c;比如安装提示“应用程序未安装”&#xff0c;那么&#xff0c;遇见这个问题应该怎么处理呢&#xff1f;请阅读本文教程&#xff01; 手机提示应用程序未安装解决办法 …

android开发下载安装app提示未安装应用

出现的情况是通过usb可以安装&#xff0c;然后用androidStudio运行生成的apk,发送出去&#xff0c;下载安装&#xff0c;提示未安装应用: 问题如图: 解决过程:在百度上看一些方案,不一致呢,问了问别人,通过正确的打包方式打包试一下,尝试过在AndroidStudio通过Build,然后Build…

什么是android应用程序未安装,显示“应用程序未安装”是怎么回事?程序未安装的解决图文步骤...

安卓手机安装应用的时候&#xff0c;有时候会莫名其妙无法安装……明明存储空间够的啊摔!经过搜索和尝试&#xff0c;本人找到一种可行的方法&#xff0c;下面分享给大家。目前看来&#xff0c;这是部分系统内的bug&#xff0c;下面&#xff0c;小编跟大家介绍安卓系统应用程序…

Andorid手机安装apk文件,提示应用未安装

项目场景&#xff1a;Andorid手机安装apk文件&#xff0c;提示应用未安装 通过Andorid studio打包生成的apk文件&#xff0c;在Andorid手机上安装时&#xff0c;提示应用未安装 安装apk文件到手机上&#xff0c;提示“应用未安装” 原因分析&#xff1a; 可能是手机上的Andor…

安装APK时提示“应用未安装”

情况说明&#xff1a;最近在做公司的移动端项目&#xff0c;作为新手碰到许多问题&#xff0c;不过也算是在披荆斩棘般前行。本来今天星期一高高兴兴来上班&#xff0c;结果测试姐姐跑过来说应用程序安装不上&#xff0c;忙活了一上午也没什么结果&#xff0c;最后还是靠公司前…

应用未安装

安卓删除软件之后安装失败 我在使用uniapp开发玩一个软件之后&#xff0c;打包&#xff0c;由于安卓之前是有一个旧的版本的&#xff0c;于是我把旧的版本删除之后&#xff0c;再去安装新的包&#xff0c;就会一直报错。 如图所示 出现这种原因是因为我在删除的时候&#xff…