微信小程序 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 json 新手入门文档
Dec 03 Javascript
关于js datetime的那点事
Nov 15 Javascript
javascript学习笔记(二十) 获得和设置元素的特性(属性)
Jun 20 Javascript
JavaScript中数组对象的那些自带方法介绍
Mar 12 Javascript
往光标所在位置插入值的js代码
Sep 22 Javascript
禁用Tab键JS代码兼容Firefox和IE
Apr 18 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
Mar 26 Javascript
Javascript中arguments和arguments.callee的区别浅析
Apr 24 Javascript
JavaScript实现自动消除按钮功能的方法
Aug 05 Javascript
js实现简单秒表走动的时钟特效
Mar 25 Javascript
jQuery实现评论模块
Aug 19 jQuery
Vue实现购物车基本功能
Nov 08 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
收听困难?教您超简便短波广播抗干扰方法!
2021/03/01 无线电
YB217、YB235、YB400浅听
2021/03/02 无线电
php使用GD创建保持宽高比缩略图的方法
2015/04/17 PHP
php常用数组函数实例小结
2016/12/29 PHP
Zero Clipboard js+swf实现的复制功能使用方法
2010/03/07 Javascript
css3元素简单的闪烁效果实现(html5 jquery)
2013/12/28 Javascript
深入理解JS中的变量及作用域、undefined与null
2014/03/04 Javascript
nodejs实现HTTPS发起POST请求
2015/04/23 NodeJs
JS动态创建DOM元素的方法
2015/06/09 Javascript
vue.js入门教程之计算属性
2016/09/01 Javascript
vue.js中指令Directives详解
2017/03/20 Javascript
Vue2.0父子组件传递函数的教程详解
2017/10/16 Javascript
如何编写一个d.ts文件的步骤详解
2018/04/13 Javascript
vue+layui实现select动态加载后台数据的例子
2019/09/20 Javascript
微信小程序 wx.getUserInfo引导用户授权问题实例分析
2020/03/09 Javascript
element跨分页操作选择详解
2020/06/29 Javascript
vue打开新窗口并实现传参的图文实例
2021/03/04 Vue.js
[46:40]VGJ.T vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
跟老齐学Python之数据类型总结
2014/09/24 Python
在Python的gevent框架下执行异步的Solr查询的教程
2015/04/16 Python
Python匹配中文的正则表达式
2016/05/11 Python
django连接mysql配置方法总结(推荐)
2018/08/18 Python
Python Flask框架扩展操作示例
2019/05/03 Python
深入了解python中元类的相关知识
2019/08/29 Python
pytorch 模拟关系拟合——回归实例
2020/01/14 Python
python help函数实例用法
2020/12/06 Python
5分钟快速掌握Python定时任务框架的实现
2021/01/26 Python
pycharm配置安装autopep8自动规范代码的实现
2021/03/02 Python
苹果美国官方商城:Apple美国
2016/08/24 全球购物
物流管理专业职业生涯规划书
2014/01/06 职场文书
餐厅采购员岗位职责
2014/03/06 职场文书
招股说明书范本
2014/05/06 职场文书
上课不认真检讨书
2014/09/17 职场文书
无违反计划生育证明格式
2015/06/24 职场文书
初三语文教学反思
2016/03/03 职场文书
MySQL事务的隔离级别详情
2022/07/15 MySQL