实现手淘金刚区类目列表的scroll滑动效果

简介:

云栖号资讯:【点击查看更多行业资讯
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!


实现手淘金刚区类目列表的scroll滑动效果,我也不知道这种css效果的专业术语是什么,就先这么叫吧。。。

1、前言

  • 在h5开发的过程中,轮播图下面放个类目的list(产品术语叫金刚区)是电商产品中很常见的布局,以前都是一行或两行排完,但是随着类目越来越多,出现了这么几种设计:

(1). 最后一个类目为查看更多,点击跳转去一个新的页面;

(2). 用swiper包裹,将多个类目当轮播图展示;

(3). 类目scroll可滑动展示。最后一种展现设计方式出现的最晚,也是现在较为主流的展现方式,所以今天我们来实现下。

  • 实现的方式:借助better-scroll库
  • 实现的难点就是一个:对滚动条的处理
  • 先看看手淘的效果:

1

2、BetterScroll

(1)介绍

  • better-scroll库是一个很优秀的库,在作者2.0的版本中,我们实现一个基本的滚动只需引入它的核心滚动,体积也很小。更多可以去官网看看。

(2)安装

2

3、实现

(1)实现效果其实很简单,利用better-scroll暴露出的两个特性、translateX、Math对象

  • maxScrollX:最大横向滚动位置,也就是整个宽度的大小,offsetLeft的感觉。
  • scroll:监听scroll的方法,告诉你滚到哪里了。
  • translateX:定义X轴的值,这里我们用百分比。
  • Math.abs:将负数转为正数

(2)用better-scroll提供的方法计算出目前列表滚动位置占整个宽度的百分比比,然后赋予translateX,就可以实现两者实时的同步滚动了。代码:

_1

4、小结

最后看看我们的实现效果(大致框架就是如此,效果自由发挥吧):

11

  • 我们panda-mall首页中也使用了这个常见的布局方式-->首页分类icon滑动

【云栖号在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/zhibo

立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK

原文发布时间:2020-04-03
本文作者:E.wall
本文来自:“掘金”,了解相关信息可以关注“掘金

相关文章
|
JavaScript 前端开发 PHP
PHP - Laravel 视图模板(blade.php) @ 原始形态输出(Vue 与 PHP 混编)
PHP - Laravel 视图模板(blade.php) @ 原始形态输出(Vue 与 PHP 混编)
327 0
不用涉及到各种冲突常规打造酷炫下拉视差效果SmartRefreshLayout+ViewPager+RecyclerView
不用涉及到各种冲突常规打造酷炫下拉视差效果SmartRefreshLayout+ViewPager+RecyclerView
378 0
|
编译器 测试技术 开发工具
让你的 XCode 编译链接耗时减半
让你的 XCode 编译链接耗时减半
1603 0
让你的 XCode 编译链接耗时减半
|
机器学习/深度学习 数据采集 搜索推荐
探索机器学习在个性化推荐系统中的应用
【5月更文挑战第30天】 随着数字内容的激增,个性化推荐系统成为缓解信息过载的关键工具。本文将深入探讨机器学习技术在构建高效个性化推荐系统中的核心作用,涵盖算法选择、数据处理及系统优化等方面。通过对比不同机器学习模型,如协同过滤、内容推荐以及混合方法,本文旨在为读者提供一套明确的指导框架,以实现更加精准和用户友好的推荐服务。
332 2
|
12月前
|
JSON 小程序 前端开发
微信小程序的目录结构及页面结构的说明
本文详细介绍了微信小程序的目录结构、页面组成部分以及项目的全局配置文件,阐述了小程序的宿主环境和运行机制,包括小程序启动和页面渲染的过程。
微信小程序的目录结构及页面结构的说明
|
11月前
|
数据采集 数据安全/隐私保护
​ CDGA|电子行业数据治理六大痛点及突围之道
电子行业在数据治理方面面临着诸多痛点。为了突围而出,企业需要针对这些痛点制定有效的解决方案和措施,包括统一数据标准、打破数据孤岛、保障数据安全、制定合理策略、培养及建立高效团队以及引进先进技术等方面。通过这些努力,企业可以不断提升数据治理的能力和水平,为业务发展提供有力支撑。
|
11月前
|
定位技术
腾讯地图自定义瓦片地图实现
腾讯地图自定义瓦片地图实现
404 1
|
JavaScript
解决报错did you register the component correctly? For recursive components, make sure to provide the “na
解决报错did you register the component correctly? For recursive components, make sure to provide the “na
|
XML Android开发 数据格式
Android Studio App开发实战项目之实现淘宝电商App首页界面(附源码,可用于大作业参考)
Android Studio App开发实战项目之实现淘宝电商App首页界面(附源码,可用于大作业参考)
1513 1
|
移动开发 安全 数据安全/隐私保护
iOS代码混淆工具
🔒 这是一篇介绍iOS代码混淆工具的技术博客,旨在帮助开发者提高代码安全性。本工具来自于Github的混淆词库和代码,通过差异化处理和代码合并生成数亿种用于混淆的单词和垃圾代码,确保每次混淆不会出现重复,混淆后的代码跟手写没有任何区别,完美解决代码4.3和2.3.1问题。