微信小程序 scroll-view的使用案例代码详解


Posted in Javascript onJune 11, 2020

scroll-view:滚动视图
使用view其实也能实现滚动,跟div用法差不多
scroll-viewview最大的区别就在于:scroll-view视图组件封装了滚动事件,监听滚动事件什么的直接写方法就行。

scroll-view纵向滚动添加属性scroll-y,然后写一个固定高度就行了,我主要说一下scroll-view的横向滚动scroll-x

我使用了display: flex;布局,特么的直接写在scroll-view上面,显示出来的结果总是不对头,试了好多次,得到了下面两种写法;

第二种在scroll-view上添加了enable-flex启用flex布局属性,启用后内部就能使用flex布局了,不然你会发现内部布局始终是纵向的。

得到的效果是一样的,能使用scroll-view事件。

wxml:

<view class="order_item_body">
	<scroll-view scroll-x="true" scroll-into-view="{{toView}}" scroll-left="{{scrollLeft}}">
		<view class="order_item_list">
			<view class="order_item_goods" wx:for="{{order.detail}}" wx:key="index" id="detail{{index}}">
				<image src="{{item.image}}" mode="widthFix"></image>
				<text>{{item.count+index}}</text>
			</view>
		</view>
	</scroll-view>
</view>

<scroll-view scroll-x bindscroll="scroll" scroll-into-view="{{toView}}" scroll-left="{{scrollLeft}}" enable-flex="{{true}}">
	<view class="order_item_list">
		<view class="order_item_goods" wx:for="{{order.detail}}" wx:key="index" id="detail{{index}}">
			<image src="{{item.image}}" mode="widthFix"></image>
			<text>{{item.count+index}}</text>
		</view>
	</view>
</scroll-view>

wxss:

.order_item_body{
	width: 100%;
	height: 196rpx;
}

.order_item_list{
	/* width: 100%; */
	height: 100%;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	/* border: 1px solid blue; */
}


.order_item_goods {
	width: 200rpx;
	height: 192rpx;
	position: relative;
}

.order_item_goods>image {
	width: 160rpx;
	height: 160rpx;
	margin: 16rpx 20rpx;
	border: 1px solid rgba(0, 0, 0, 0.5);
}

.order_item_goods>text {
	height: 30rpx;
	line-height: 30rpx;
	padding: 0rpx 5rpx;
	font-size: 24rpx;
	color: rgba(255, 255, 255);
	border-top-left-radius: 10rpx;
	background-color: rgba(0, 0, 0, 0.5);
	position: absolute;
	bottom: 16rpx;
	right: 20rpx;
}

效果图:

微信小程序 scroll-view的使用案例代码详解

求推荐一款免费且没有水印的gif制作软件,有水印看到就烦。

ps:下面看下微信小程序scroll-view的scroll-into-view无效如何解决

最近在写小程序项目遇到这么一个问题:在使用scroll-into-view的时候无效。

在网上查了一遍,给出的答案有:

1.给scroll-view要设置高度,必须设置上scroll-y或者scroll-x为true(必须要的)

2.scroll-into-view初始化设置的时候,可能因为页面或者数据未加载不能跳转。需要在js里手动setData一下。

一顿操作猛如虎,一看还是没有效果。还是接着找原因吧。。

最后发现,原来是在给scroll-view设置高度的时候,不能用%来设置高度,改成固定高度类似500rpx就可以了

最后贴上代码:

<view class="left" wx:for="{{cateItems}}" wx:key="{{cateItems}}">
	 <view class='title' bindtap="navItem">{{item.name}}</view>
</block>

<scroll-view class="right" scroll-y="true" scroll-into-view="{{ intoindex }}" style="height: 1100rpx;" scroll-with-animation>
	<view class="clearfix" wx:for="{{cateItems}}" id="intoindex{{item.id}}"></view>
</scroll-view>

Page({
 	data: {
		intoindex:''
 	},
	navItem(e){
		const that = this
		var id = e.target.id
		that.setData({
			intoindex:'intoindex'+id
		})
	}
})

总结

到此这篇关于微信小程序 scroll-view的使用案例代码详解的文章就介绍到这了,更多相关微信小程序 scroll-view的使用 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
js关闭子窗体刷新父窗体实现方法
Dec 04 Javascript
运行Node.js的IIS扩展iisnode安装配置笔记
Mar 02 Javascript
JavaScript中的getTime()方法使用详解
Jun 10 Javascript
JS实现鼠标滑过显示边框的菜单效果
Sep 21 Javascript
js select下拉联动 更具级联性!
Apr 17 Javascript
基于BootStrap的前端分页带省略号和上下页效果
May 18 Javascript
想用好React的你必须要知道的一些事情
Jul 24 Javascript
基于vue+axios+lrz.js微信端图片压缩上传方法
Jun 25 Javascript
Vue.js 中的实用工具方法【推荐】
Jul 04 Javascript
Jquery滑动门/tab切换实现方法完整示例
Jun 05 jQuery
vue切换菜单取消未完成接口请求的案例
Nov 13 Javascript
vue-router中hash模式与history模式的区别
Jun 23 Vue.js
基于ajax及jQuery实现局部刷新过程解析
Sep 12 #jQuery
微信小程序scroll-view实现滚动到锚点左侧导航栏点餐功能(点击种类,滚动到锚点)
Jun 11 #Javascript
多页vue应用的单页面打包方法(内含打包模式的应用)
Jun 11 #Javascript
VUE页面中通过双击实现复制表格中内容的示例代码
Jun 11 #Javascript
vue scroll滚动判断的实现(是否滚动到底部、滚动方向、滚动节流、获取滚动区域dom元素)
Jun 11 #Javascript
Vue初始化中的选项合并之initInternalComponent详解
Jun 11 #Javascript
Vue组件为什么data必须是一个函数
Jun 11 #Javascript
You might like
PHP实现的功能是显示8条基色色带
2006/10/09 PHP
php获取通过http协议post提交过来xml数据及解析xml
2012/12/16 PHP
Yii使用CLinkPager分页实例详解
2014/07/23 PHP
浅谈php优化需要注意的地方
2014/11/27 PHP
自己写的php curl库实现整站克隆功能
2015/02/12 PHP
Docker 安装 PHP并与Nginx的部署实例讲解
2021/02/27 PHP
javascript判断非数字的简单例子
2013/07/18 Javascript
js replace替换所有匹配的字符串
2014/02/13 Javascript
jquery 使用简明教程
2014/03/05 Javascript
jQuery实现提示密码强度的代码
2015/07/15 Javascript
JavaScript动态提示输入框输入字数的方法
2015/07/27 Javascript
js基础知识(公有方法、私有方法、特权方法)
2015/11/06 Javascript
基于jquery实现简单的手风琴特效
2015/11/24 Javascript
jQuery插件easyUI实现通过JS显示Dialog的方法
2016/09/16 Javascript
深入理解JavaScript定时机制
2016/10/27 Javascript
js输入框使用正则表达式校验输入内容的实例
2017/02/12 Javascript
vue指令以及dom操作详解
2017/03/04 Javascript
基于wordpress的ajax写法详解
2018/01/02 Javascript
vue2.0 父组件给子组件传递数据的方法
2018/01/15 Javascript
浅析js中mvvm模式实现的原理
2018/10/06 Javascript
Layer UI表格列日期格式化及取消自动填充日期的实现方法
2020/05/10 Javascript
[39:11]DOTA2上海特级锦标赛C组资格赛#2 LGD VS Newbee第二局
2016/02/28 DOTA
python 简易计算器程序,代码就几行
2009/08/29 Python
深度定制Python的Flask框架开发环境的一些技巧总结
2016/07/12 Python
使用Kivy将python程序打包为apk文件
2017/07/29 Python
Python:Scrapy框架中Item Pipeline组件使用详解
2017/12/27 Python
Python实现PS滤镜的万花筒效果示例
2018/01/23 Python
Windows上安装tensorflow  详细教程(图文详解)
2020/02/04 Python
python 解决print数组/矩阵无法完整输出的问题
2020/02/19 Python
python GUI库图形界面开发之PyQt5结合Qt Designer创建信号与槽的详细方法与实例
2020/03/08 Python
windows下python 3.9 Numpy scipy和matlabplot的安装教程详解
2020/11/28 Python
德国旅行、体验和活动的预订平台:Watado
2019/12/04 全球购物
PPP协议组成及简述协议协商的基本过程
2015/05/28 面试题
谢师宴邀请函
2015/02/02 职场文书
简历自荐信范文
2015/03/09 职场文书
答辩状格式范本
2015/05/22 职场文书