首先看一下项目截图html
业务场景:项目中有时会遇到根据首字母选择城市,或者根据首字母选择通信录姓名等等,那若是按照之前的思路须要用判断滚动条的位置,才能滑动到哪一个地方。小程序官方有提供scroll-into-view
属性,能够更快的解决这个场景。小程序
小程序官方提供的属性描述。小程序文档bash
<scroll-view scroll-y scroll-into-view="{{intoview}}">
//右侧定位存在的首字母
<view class="searchLetter">
<view
wx:for="{{provinceList}}"
wx:for-index="key"
wx:for-item="value"
wx:key="index"
data-id="{{key}}"
bindtap="scrollToSelect"
>{{key}}
</view>
</view>
<view class="selection" wx:for="{{provinceList}}" wx:key="key" id="{{key}}">
//省略遍历省份,数据结构最好是map格式,根据首字母遍历
</view>
</scroll-view>
复制代码
注意数据结构
scroll-view
组件须要设置scroll-y
竖向滚动。scroll-into-view
的值就是选中的首字母,子元素须要设置属性id
(键值就是首字母A、B、C等等)。scrollToSelect
方法是用于点击字母,给scroll-into-view
赋值。scroll-view
必需要设置固定高度,不然点击首字母无效。有了
scroll-into-view
,实现首字母选择城市就变得很简单了,看下效果图吧。spa