在uni-app中,判断某一个view是否触底(即滚动到底部)通常可以通过以下几种方法实现: 1. 使用scroll-view组件的scrolltolower事件 scroll-view是uni-app提供的一个用于实现滚动功能的组件,它支持scrolltolower事件,该事件会在滚动到底部时触发。 html <template> <view> <scroll-view scroll-y=...
最终选择了适用scroll-view自带的滚到底部触发事件scrolltolower事件,虽然这个事件确实能够实现上拉加载数据分页的功能,但是这个是事件存在两个问题。第一个问题就是当滚动条滚动到底部时会多次触发scrolltolower事件,第二个问题是当页面由第一个scroll-view(该页面已经到了的最底部了)切换到第二个scroll-view时会自动...
113、ScrollView滑动到了最底部 ScrollView使用 滚动到顶部判断: 1. getScrollY() == 0 1. 滚动到底部判断: 1. View childView = getChildAt(0); 1. childView.getMeasuredHeight() <= getScrollY() + getHeight(); 1. 其中getChildAt表示得到ScrollView的child View 1. childView.getMeasuredHeight()表示...
导语:在日测的开发过程中,经常会碰到页面需要渲染大量数据的情况,这时候就需要用到滚动加载功能,下面总结一下方法。 目录 原理分析 实战演练 案例展示 原理分析 使用@scrolltolower事件来监听滚动到底部,然后加载下一页的数据。 实战演练 模板页面 <scroll-view :scroll-y="true" class="block-main block-two-lev...
输入内容后,必然要在对话界面的底部显示内容,可以通过uni.pageScrollTo的方式,但是这个页面刷新的太厉害,输入框都刷新了,没法使用。所以只能使用scroll-view组件。但是通过scroll-view使用竖向滚动时,需要给 一个固定高度。为了适配屏幕的大小,则需要通过计算来确定scroll-view的高度。
回答:内容自动滚动到可视化区域的底部,你可以自己写一个函数,在页面加载完成后调用即可,这个功能一般不需要采用组件来实现,书写起来也并不复杂,简单的逻辑如下: function getMaxHeight() { messageContainer = document.getElementsByClassName("message-container")[0]; messageContainer.scrollTo({ top: messageContainer...
uni-app中不使用scroll-view组件,监听页面滑直底部事件 最终达到的目标效果 将要用到 监听页面滚动事件:onPageScroll 获取节点信息uni.createSelectorQuery() 标签布局 <template> <view class="content"> <!--目标节点--> <view class="text-area" id="listArea"> <view class="square" v-for="(v,...
最近做一个uniapp的聊天室界面,当获取聊天信息之后需要下滑到底部最新消息处,当上拉刷新的时候需要再往上一格移动到下面的消息 通过scroll-view的滚动和下拉刷新来实现 在scroll-view的属性中设置:scroll-into-view="state.scrollIntoMessageId"通过动态设置scrollIntoMessageId来到指定的组件位置 ...
scroll-view是必不可少的! 这里需要用到scroll-view的标签属性scroll-into-view scroll-into-view 值应为某子元素id id不能以数字开头 设置哪个方向可滚动,则在哪个方向滚动到该元素 开始 布局部分示例 <scroll-viewscroll-y="true":scroll-info-view="childrenId"><viewv-for="(item,index) in msg":key=...
</scroll-view> </view> </template> export default { data() { return { } }, methods: { handleScrollToLower(){ console.log('已经滚动到底部了'); } } } .item { height: 300rpx; width: 100%; background-color: beige; border-...