微信小程序 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 相关文章推荐
浅谈javascript 函数属性和方法
Jan 21 Javascript
BootStrap3学习笔记(一)之网格系统
May 20 Javascript
JavaScript中的Array 对象(数组对象)
Jun 02 Javascript
JavaScript 随机验证码的生成实例代码
Sep 22 Javascript
Angular.js与node.js项目里用cookie校验账户登录详解
Feb 22 Javascript
浅谈JS封闭函数、闭包、内置对象
Jul 18 Javascript
vue系列之动态路由详解【原创】
Sep 10 Javascript
详解自定义ajax支持跨域组件封装
Feb 08 Javascript
Angular6 写一个简单的Select组件示例
Aug 20 Javascript
微信小程序自定义头部导航栏(组件化)
Nov 15 Javascript
tracking.js实现前端人脸识别功能
Apr 16 Javascript
js实现随机点名器精简版
Jun 29 Javascript
基于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
Protoss兵种对照表
2020/03/14 星际争霸
php删除与复制文件夹及其文件夹下所有文件的实现代码
2013/01/23 PHP
深入PHP curl参数的详解
2013/06/17 PHP
浅析php适配器模式(Adapter)
2014/11/25 PHP
基于PHP实现通过照片获取ip地址
2016/04/26 PHP
Yii2创建多界面主题(Theme)的方法
2016/10/08 PHP
PHP number_format函数原理及实例解析
2020/07/14 PHP
JQuery1.4+ Ajax IE8 内存泄漏问题
2010/10/15 Javascript
一些老手都不一定知道的JavaScript技巧
2014/05/06 Javascript
js数值计算时使用parseInt进行数据类型转换(jquery)
2014/10/07 Javascript
node.js中的emitter.emit方法使用说明
2014/12/10 Javascript
node.js集成百度UE编辑器
2015/02/05 Javascript
jquery渐隐渐显的图片幻灯闪烁切换实现方法
2015/02/26 Javascript
动态更新highcharts数据的实现方法
2016/05/28 Javascript
购物车前端开发(jQuery和bootstrap3)
2016/08/27 Javascript
Chrome不支持showModalDialog模态对话框和无法返回returnValue问题的解决方法
2016/10/30 Javascript
深入理解React Native原生模块与JS模块通信的几种方式
2017/07/24 Javascript
JavaScript输入分钟、秒倒计时技巧总结(附代码)
2017/08/17 Javascript
JavaScript实现兼容IE6的收起折叠与展开效果实例
2017/09/20 Javascript
JS+WCF实现进度条实时监测数据加载量的方法详解
2017/12/19 Javascript
vue自定义移动端touch事件之点击、滑动、长按事件
2018/07/10 Javascript
详解Vue的钩子函数(路由导航守卫、keep-alive、生命周期钩子)
2018/07/24 Javascript
老生常谈进程线程协程那些事儿
2017/07/24 Python
python傅里叶变换FFT绘制频谱图
2019/07/19 Python
CSS3五个技巧给你的网站带来出色的效果
2009/04/02 HTML / CSS
科茨沃尔德家居商店:Scotts of Stow
2018/06/29 全球购物
英国票务网站:Ticketmaster英国
2018/08/27 全球购物
Pretty Green美国:英式摇滚服饰风格代表品牌之一
2019/01/23 全球购物
DBA数据库管理员JAVA程序员架构师必看
2016/02/07 面试题
Linux的文件类型
2012/03/07 面试题
2016年度农村党员干部主题教育活动总结
2016/04/06 职场文书
入伍志愿书怎么写?
2019/07/19 职场文书
导游词之徐州-云龙山
2019/09/29 职场文书
CSS极坐标的实例代码
2021/06/03 HTML / CSS
RestTemplate如何通过HTTP Basic Auth认证示例说明
2022/03/17 Java/Android
Elasticsearch Recovery 详细介绍
2022/04/19 Java/Android