微信小程序组件解读和分析:二、scroll-view可滚动视图区域
可滚动视图区域。
组件用法:纵向滚动用法
Tip:
- 使用竖向滚动时,需要给一个固定高度,通过 WXSS 设置 height,否则无法滚动。
- 当滚动到顶部时会触发bindscrolltoupper事件(具体可留意GIF输出)
- 当滚动到底部时会触发bindscrolltolower事件(具体可留意GIF输出)
下面是WXML代码:
|
01
02
03
04
05
06
07
08
09
10
|
<scroll-view scroll-y="true" style="height: 200px;" bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll" scroll-into-view="{{toView}}" scroll-top="{{scrollTop}}"> <view id="green" class="scroll-view-item bc_green"></view> <view id="red" class="scroll-view-item bc_red"></view> <view id="yellow" class="scroll-view-item bc_yellow"></view> <view id="blue" class="scroll-view-item bc_blue"></view></scroll-view><view class="btn-area"> <button size="mini" bindtap="tap">click me to scroll into view </button> <button size="mini" bindtap="tapMove">click me to scroll</button></view> |
|
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
var order = ['red', 'yellow', 'blue', 'green', 'red']Page({ data: { toView: 'green', scrollTop: 100, scrollLeft: 0 }, //滚动条滚到顶部的时候触发 upper: function(e) { console.log(e) }, //滚动条滚到底部的时候触发 lower: function(e) { console.log(e) }, //滚动条滚动后触发 scroll: function(e) { console.log(e) }, //点击按钮切换到下一个view tap: function(e) { for (var i = 0; i < order.length; ++i) { if (order === this.data.toView) { this.setData({ toView: order[i + 1] }) break } } }, //通过设置滚动条位置实现画面滚动 tapMove: function(e) { this.setData({ scrollTop: this.data.scrollTop + 10 }) }}) |
|
01
02
03
04
05
06
07
08
09
10
11
|
.scroll-view_H{ white-space: nowrap;}.scroll-view-item{ height: 200px;}.scroll-view-item_H{ display: inline-block; width: 100%; height: 200px;} |
- 横向滚动无法使用scroll-into-view属性。
- 当滚动到最左边时会触发bindscrolltoupper事件(具体可留意GIF输出)
- 当滚动到最右边时会触发bindscrolltolower事件(具体可留意GIF输出)

|
1
2
3
4
5
6
|
<scroll-view class="scroll-view_H" scroll-x="true" style="width: 100%" bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll" scroll-left="{{scrollLeft}}"> <view id="green" class="scroll-view-item_H bc_green"></view> <view id="red" class="scroll-view-item_H bc_red"></view> <view id="yellow" class="scroll-view-item_H bc_yellow"></view> <view id="blue" class="scroll-view-item_H bc_blue"></view></scroll-view> |
|
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
var order = ['red', 'yellow', 'blue', 'green', 'red']Page({ data: { toView: 'green', scrollTop: 100, scrollLeft: 0 }, //滚动条滚到顶部的时候触发 upper: function(e) { console.log(e) }, //滚动条滚到底部的时候触发 lower: function(e) { console.log(e) }, //滚动条滚动后触发 scroll: function(e) { console.log(e) }, //点击按钮切换到下一个view tap: function(e) { for (var i = 0; i < order.length; ++i) { if (order === this.data.toView) { this.setData({ toView: order[i + 1] }) break } } }, //通过设置滚动条位置实现画面滚动 tapMove: function(e) { this.setData({ scrollLeft: this.data.scrollLeft + 10 }) }}) |
|
01
02
03
04
05
06
07
08
09
10
11
|
.scroll-view_H{ white-space: nowrap;}.scroll-view-item{ height: 200px;}.scroll-view-item_H{ display: inline-block; width: 100%; height: 200px;} |
|
属性
|
类型
|
默认值
|
描述
|
|
scroll-x
|
Boolean
|
false
|
允许横向滚动
|
|
scroll-y
|
Boolean
|
false
|
允许纵向滚动
|
|
upper-threshold
|
Number
|
50
|
距顶部/左边多远时(单位px),触发 scrolltoupper 事件
|
|
lower-threshold
|
Number
|
50
|
距底部/右边多远时(单位px),触发 scrolltolower 事件
|
|
scroll-top
|
Number
|
设置竖向滚动条位置
|
|
|
scroll-left
|
Number
|
设置横向滚动条位置
|
|
|
scroll-into-view
|
String
|
值应为某子元素id,则滚动到该元素,元素顶部对齐滚动区域顶部
|
|
|
bindscrolltoupper
|
EventHandle
|
滚动到顶部/左边,会触发 scrolltoupper 事件
|
|
|
bindscrolltolower
|
EventHandle
|
滚动到底部/右边,会触发 scrolltolower 事件
|
|
|
bindscroll
|
EventHandle
|
滚动时触发,event.detail = {scrollLeft, scrollTop, scrollHeight, scrollWidth, deltaX, deltaY}
|
微信小程序组件解读和分析:二、scroll-view可滚动视图区域的更多相关文章
- 微信小程序组件解读和分析:六、progress进度条
progress进度条组件说明: 进度条,就是表示事情当前完成到什么地步了,可以让用户视觉上感知事情的执行.progress进度条是微信小程序的组件,和HTML5的进度条progress类似. pro ...
- 微信小程序组件解读和分析:五、text文本
text文本组件说明: text 文本就是微信小程序中显示出来的文本. text文本组件的示例代码运行效果如下: 下面是WXML代码: [XML] 纯文本查看 复制代码 ? 1 2 3 4 <v ...
- 微信小程序组件解读和分析:四、icon图标
icon图标组件说明: icon是一种图标格式,用于系统图标.软件图标等,这种图标扩展名为.icon..ico.常见的软件或windows桌面上的那些图标一般都是ICON格式的.在应用上面很多地方 ...
- 微信小程序组件解读和分析:十二、picker滚动选择器
picker滚动选择器组件说明: picker: 滚动选择器,现支持三种选择器,通过mode属性来区分, 分别是普通选择器(mode = selector),时间选择器(mode = time),日期 ...
- 微信小程序组件解读和分析:十四、slider滑动选择器
slider滑动选择器组件说明: 滑动选择器. slider滑动选择器示例代码运行效果如下: 下面是WXML代码: [XML] 纯文本查看 复制代码 ? 01 02 03 04 05 06 07 08 ...
- 微信小程序组件解读和分析:十、input输入框
input输入框组件说明: 本文介绍input 输入框的各种参数及特性. input输入框示例代码运行效果如下: 下面是WXML代码: [XML] 纯文本查看 复制代码 ? 01 02 03 04 0 ...
- 微信小程序组件解读和分析:八、checkbox复选项
checkbox复选项组件说明: checkbox是小程序表单组件中的一个组件,作用是在表单中引导用户做出选择. 要使用checkbox组件,还需要在同组中所有的checkbox标签外使用checkb ...
- 微信小程序组件解读和分析:一、view(视图容器 )
view组件说明: 视图容器 跟HTML代码中的DIV一样,可以包裹其他的组件,也可以被包裹在其他的组件内部.用起来比较自由随意,没有固定的结构. view组件的用法: 示例项目的wxml ...
- 微信小程序组件解读和分析:十五、switch 开关选择器
switch 开关选择器组件说明: switch,开关选择器.只能选择或者不选.这种属于表单控件或者查询条件控件. switch 开关选择器示例代码运行效果如下: 下面是WXML代码: [XML] 纯 ...
随机推荐
- php设计模式——模板模式
最近打算巩固,整理一下设计模式相关的内容.这篇是关于 ——模板模式! 原文:http://www.jb51.net/article/76052.htm ----------------------- ...
- [Java Sprint] Spring XML Configuration : Constructor Injection Demo
Previous we see how to do Setter injection: https://www.cnblogs.com/Answer1215/p/9472117.html Now le ...
- 李洪强iOS开发之动态获取UILabel的bounds
李洪强iOS开发之动态获取UILabel的bounds 在使用UILabel存放字符串时,经常需要获取label的长宽数据,本文列出了部分常用的计算方法. 1.获取宽度,获取字符串不折行单行显示时所需 ...
- ImportError: No module named 'ConfigParser'
Resolve Method: I found the problem. I had manually installed a newer version of python (version 3.2 ...
- 1.jdk安装和环境配置
这个简单,但是记不住,非要网上搜一遍不可: 1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME 变量值:C:\Progr ...
- a high-level neural networks AP
Keras Documentation https://keras.io/ You have just found Keras. Keras is a high-level neural networ ...
- 加密散列算法——SHA-1
与MD5算法类似,SHA-1算法也是在接收到消息后产生消息摘要,能够用来验证数据的完整性. 不同的是SHA1会产生一个160位的消息摘要(MD5产生的是128位). 其它的性质之类的不多说(请參考前面 ...
- YTU 2626: B 统计程序设计基础课程学生的平均成绩
2626: B 统计程序设计基础课程学生的平均成绩 时间限制: 1 Sec 内存限制: 128 MB 提交: 427 解决: 143 题目描述 程序设计基础课程的学生成绩出来了,老师需要统计出学生 ...
- luogu 1121 环状最大两段子段和
题目大意: 一个序列看做一个环 选两段数使它们和最大 思路: 定义一个dp数组i j 0/1 表示前i个取了连续的j段 0/1表示取不取第i个 但是因为看做一个环 首尾相接的情况可以看做是选三段,其中 ...
- 【PA 2014】Kuglarz
[题目链接] 点击打开链接 [算法] sum[i]表示前i个杯子中,杯子底下藏有球的杯子总数 那么,知道[i,j]这段区间中,藏有球的 ...