scroll-view组件时是滚动的视图容器,可在竖直方向或水平方向上滚动,展示超出屏幕高度或宽度的内容。
使用竖直方向滚动时,需要通过wxss的height样式给scroll-view设置一个固定高度,超出设定高度的内容会被隐藏,通过页面滚动可以将它们显示出来。
scroll-view组件支持的属性如下:
scroll-x:默认值false,允许横向滚动
scroll-y:默认值false,允许纵向滚动
upper-threshold:默认值50,距顶部/左边多远时,触发scrolltoupper事件
lower-threshold:默认值50,距底部/右边多远时,触发scrolltolower事件
scroll-top:设置竖向滚动条位置
scroll-left:设置横向滚动条位置、
scroll-into-view:值应为某子元素id(id不能以数字开头)。设置哪个方向可滚动,则在哪个方向滚动到该元素
scroll-with-animation:默认值为false,在设置滚动条时使用动画过渡
enable-back-to-top:默认值为false,iOS单击顶部状态栏、安卓双击标题栏时,滚动条返回顶部,只支持竖向。
bindscrolltoupper:滚动到顶部/左边时触发
bindscrolltolower:滚动到底部/右边时触发
bindscroll:滚动时触发,event.detail = {scrollLeft,scrollTop,scrollTop,scrollHeight,scrollWidth,deltaX,deltaY}
upper-threshold和lower-threshold是两个边界值,用于设置触发scrolltoupper事件,scrolltolower事件,两个属性单位默认为px,从基础库2.4.0起来可以传入单位(rpx或px)
scroll-top,scroll-left,scroll-into-view都用于设置滚动条位置,应该设置为变量而不是固定值。即
scroll-top = "{{scrollTop}}"
scroll-into-view = "{{toView}}"
scroll-top,scroll-left单位默认为px,从基础库2.4.0起来可以传入单位(rpx或px)
scroll-into-view通过子组件设定滚动的位置,id属性必须唯一,即同一页面的两个组件不能取相同的值,例如下面这段代码,如果在JS文件中奖toView的值改为view2,scroll-view就会滚动到第二个view的位置。
<scroll-view?scroll-y?style="height:20px;"?scroll-into-view="{{toView}}">
??<view?id="view1"?class="scroll-view-item"></view>
??<view?id="view2"?class="scroll-view-item"></view>
</scroll-view>