<template> <view class="inde"> <scroll-view class="list_wrapper" @scroll="scrollEvent" scroll-y="true"> <view class="top_fixed" :style="{height:navHeight+'rpx',backgroundColor:istoggle?`#ffffff`:``,opacity:opacity}"> <view class="top_fixed_wrapper" :style="{height:navigationBarHeight+'rpx',top:statusBarHeight+'rpx'}"> <view class="nav_fixed" :style="{width:navFixedWidth,lineHeight:customHeight + 'rpx',paddingLeft:textPaddingLeft*scaleFactor+'rpx'}"> <view :class="[istoggle?`nav_fixed_title_toggole`:`nav_fixed_item_title`]"> <text style="margin-left:8rpx ;">果实坊</text> </view> <view class="nav_fixed_item_search" @click="turntosearch"> <view :class="[istoggle?`nav_fixed_input_toggole`:`nav_fixed_item_input`]"> <text class="iconfont " style="font-size: 35rpx;margin-left: 10rpx;">&#xe693;</text> <text style="font-size: 25rpx;margin-left: 5rpx; ">{{searchtitle}}</text> </view> </view> </view> </view> </view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> <view style="background-color: red;width: 100%;height: 200rpx">sssssssssssssss</view> </scroll-view> </view> </template> <script> export default { data() { return { istoggle:false } }, methods: { scrollEvent(e) { console.log(e) var e=e.detail if (e.scrollTop <= 30) { this.istoggle = false this.opacity = 0 } if (e.scrollTop > 30 && e.scrollTop <= 32) { this.istoggle = true this.opacity = 0.3 } if (e.scrollTop > 32 && e.scrollTop <= 34) { this.istoggle = true this.opacity = 0.4 } if (e.scrollTop > 34 && e.scrollTop <= 36) { this.istoggle = true this.opacity = 0.5 } if (e.scrollTop > 36 && e.scrollTop <= 38) { this.istoggle = true this.opacity = 0.6 } if (e.scrollTop > 38 && e.scrollTop <= 40) { this.istoggle = true this.opacity = 0.7 } if (e.scrollTop > 40 && e.scrollTop <= 42) { this.istoggle = true this.opacity = 0.8 } if (e.scrollTop > 46) { this.istoggle = true this.opacity = 1 } }, } } </script> <style> .index{ width: 100%; height: 100%; } .list_wrapper{ width: 100%; height: 100vh; } /* 固定导航栏整体部分(包括状态栏+导航栏) */ .top_fixed { box-sizing: border-box; width: 100%; position: fixed; top: 0; left: 0; z-index: 10; } /* 导航栏部分(导航栏外层) */ .top_fixed_wrapper { box-sizing: border-box; width: 100%; position: absolute; left: 0; display: flex; /* justify-content: center; */ align-items: center; } /* 导航栏部分(导航栏内层:平齐胶囊部分) */ .nav_fixed { box-sizing: border-box; width: 100%; top: 202rpx; z-index: 10; display: flex; flex-direction: row; align-items: center; justify-content: space-around; } /* 标题 */ .nav_fixed_item_title { width: 30%; height: 100%; color: yellow; font-size: 40rpx; font-weight: bold; } /* 假搜索框外层 */ .nav_fixed_item_search { width: 75%; height: 100%; margin-right: 10rpx; margin-left: 5rpx; font-size: 40rpx; font-weight: bold; } /* 假搜索框 */ .nav_fixed_item_input { width: 100%; height: 100%; box-sizing: border-box; background-color: yellow; border-radius: 50rpx; color: #858992; display: flex; flex-direction: row; align-items: center; } /* 标题下拉fixed样式 */ .nav_fixed_title_toggole { width: 30%; height: 100%; color: seagreen; font-size: 40rpx; font-weight: bold; } /* 假搜索框下拉fixed样式 */ .nav_fixed_input_toggole { width: 100%; height: 100%; box-sizing: border-box; background-color: #ffffff; border-radius: 50rpx; color: #858992; display: flex; flex-direction: row; align-items: center; border: 4rpx solid seagreen; } </style>
scroll-view组件下拉过快的话,scroll事件无法灵敏监听?导致数据不能及时响应在滑动事件中,监听滑动距离,如果距离大于0,那么istop=false,若是滑动距离为0,那么istop=true 通过这个变量控制元素顶部导航栏的隐藏显示,结果快速滑动后 事件监听就不灵敏了,出现本该隐藏的元素在页面出现 如何解决,看了很多帖子都有这个现象,2022了还没解决吗官方
2023-01-14一样有这个问题,还是没有解决, 这个不太灵敏
scroll-view滚动到底部有时候不触发scrolltolower事件1.初始页面会渲染出10条数据 2.然后快速滑动页面scroll-view触底,数组arr变为20条,页面渲染20条。正常情况可以继续滑动去触底让数组变为30条,页面渲染30条,然后继续往滑。。。 3.问题复现:要一直快速滑动页面,总会在某个节点(可能是30、40、50、60条等)的时候看到打印的数组arr是n十条的时候,页面也是n十条,也就是数组和页面数据对等,以及已经到底部的时候。卡在那不能再滑动页面去触底了(因为已经在底部了)。此时需要回滚一点点 才能继续触发触底事件
2023-01-14你好这个问题解决了吗
app.js里onHide监听里的代码没有执行https://developers.weixin.qq.com/miniprogram/dev/reference/api/App.html 想要在小程序退出的时候调个接口,手机真机调试的时候是正常执行了,但直接用手机运行的话,退出就没有执行onHide里的代码,再进入小程序又执行了。求解?
2023-01-11