原网页地址:https://uniapp.dcloud.io/component/scroll-view

scroll-view,可滚动视图区域。用于区域滚动。

需注意在webview渲染页面中,区域滚动性能不及页面滚动。

属性说明

属性名 类型 默认值 说明 平台差异说明
scroll-x Boolean false 允许横向滚动  
scroll-y Boolean false 允许纵向滚动  
upper-threshold Number 50 距顶部/左边多远时(单位px),触发scrolltopper事件  
lower-threshold Number 50 距离底部/右边多远时(单位px),触发scrolltolwer事件  
scroll-top Number   设置竖直滚动条位置  
scroll-top Number   设置横向滚动条位置  
scroll-into-view String   值应为某子元素id(id不能以数字开头)。设置哪个方向可滚动,则在哪个方向滚动到该元素  
scroll-with-animation Boolean false 在设置滚动条位置时使用动画过渡  
enable-back-to-top Boolean false iOS点击顶部状态栏、安卓双击标题栏时,滚动条返回顶部,只支持竖向 app-nvue,微信小程序
show-scrollbar Boolean false 控制是否出现滚动条 App-nvue 2.1.5+
refresher-enabled Boolean false 开启自定义下拉刷新 app-vue 2.5.12+,微信小程序基础库2.10.1+
refresher-threshold Number 45 设置自定义下拉刷新阈值 app-vue 2.5.12+,微信小程序基础库2.10.1+
refresher-default-style String "black" 设置自定义下拉刷新默认样式,支持设置 black,white,none,none 表示不使用默认样式 app-vue 2.5.12+,微信小程序基础库2.10.1+
refresher-background String "#FFF" 设置自定义下拉刷新区域背景颜色 app-vue 2.5.12+,微信小程序基础库2.10.1+
refresher-triggered Boolean false 设置当前下拉刷新状态,true 表示下拉刷新已经被触发,false 表示下拉刷新未被触发 app-vue 2.5.12+,微信小程序基础库2.10.1+
enable-flex Boolean false 启用 flexbox 布局。开启后,当前节点声明了 display: flex 就会成为 flex container,并作用于其孩子节点。 微信小程序 2.7.3
scroll-anchoring Boolean false 开启 scroll anchoring 特性,即控制滚动位置不随内容变化而抖动,仅在 iOS 下生效,安卓下可参考 CSS overflow-anchor 属性。 微信小程序 2.8.2
@scrolltoupper EventHandle   滚动到顶部/左边,会触发 scrolltoupper 事件  
@scrolltolower EventHandle   滚动到底部/右边,会触发 scrolltolower 事件      
@scroll EventHandle   滚动时触发,event.detail = {scrollLeft, scrollTop, scrollHeight, scrollWidth, deltaX, deltaY}  
@refresherpulling EventHandle   自定义下拉刷新控件被下拉 app-vue 2.5.12+,微信小程序基础库2.10.1+
@refresherrefresh EventHandle   自定义下拉刷新被触发 app-vue 2.5.12+,微信小程序基础库2.10.1+
@refresherrestore EventHandle   自定义下拉刷新被复位 app-vue 2.5.12+,微信小程序基础库2.10.1+
@refresherabort EventHandle   自定义下拉刷新被中止 app-vue 2.5.12+,微信小程序基础库2.10.1+

使用数值滚动时,需要给<scroll-view>一个固定高度,通过css设置heigth;使用横向滚动时,需要给<scroll-view>添加white-space:nowrap;样式。

示例 查看演示

以下示例代码来自hello uni-app项目,推荐使用HBuilderX。

 1 <!-- 本示例未包含完整css,获取外链css请参考上文,在hello uni-app项目中查看 -->
 2 <template>
 3     <view>
 4         <view class="uni-padding-wrap uni-common-mt">
 5             <view class="uni-title uni-common-mt">
 6                 Vertical Scroll
 7                 <text>\n纵向滚动</text>
 8             </view>
 9             <view>
10                 <scroll-view :scroll-top="scrollTop" scroll-y="true" class="scroll-Y" @scrolltoupper="upper" @scrolltolower="lower"
11                 @scroll="scroll">
12                     <view id="demo1" class="scroll-view-item uni-bg-red">A</view>
13                     <view id="demo2" class="scroll-view-item uni-bg-green">B</view>
14                     <view id="demo3" class="scroll-view-item uni-bg-blue">C</view>
15                 </scroll-view>
16             </view>
17             <view @tap="goTop" class="uni-link uni-center uni-common-mt">
18                 点击这里返回顶部
19             </view>
20             <view class="uni-title uni-common-mt">
21                 Horizontal Scroll
22                 <text>\n横向滚动</text>
23             </view>
24             <view>
25                 <scroll-view class="scroll-view_H" scroll-x="true" @scroll="scroll" scroll-left="120">
26                     <view id="demo1" class="scroll-view-item_H uni-bg-red">A</view>
27                     <view id="demo2" class="scroll-view-item_H uni-bg-green">B</view>
28                     <view id="demo3" class="scroll-view-item_H uni-bg-blue">C</view>
29                 </scroll-view>
30             </view>
31         </view>
32     </view>
33 </template>
示例

相关文章: