Flicking,一款神奇的 JavaScript 开源轮播图库?

嗨,大家好,欢迎来到猿镇,我是镇长,lee。

  • Github Star: 2.7k[1]
  • 官网[2]

Flicking.js 是一个用于创建触摸友好的轮播控件的 JavaScript库,它支持多种配置和交互,适用于构建响应式的图像或内容滑动界面。Flicking.js 的核心功能包括手势控制、自动播放、无限循环等,并且可以通过API进行高度自定义。

嵌套 Flicking

可变尺寸 Flicking

网格 Flicking

垂直 Flicking

在项目中使用 Flicking 首先需要安装,我们可以通过包管理 npmyarnCDN 等方式安装。

Flicking 提供配合前端框架使用的安装包,例如:VueReactAngularPreact 等。

在项目中使用 Flicking,首先需要向页面中添加基本 HTML 布局。

然后在 JavaScript 中初始化 Flicking 实例对象。

Flicking.js 提供了一系列的配置选项,允许用户根据自己的需求进行自定义。主要的配置选项:

  • align: 视口中面板对齐位置。
  • circular: 是否无限循环滚动,默认为 false 。
  • bound: 是否限制滚动边界,默认为 false 。
  • adaptive: 是否响应式布局,即根据父容器的尺寸来自动调整轮播元素的尺寸,默认为 false
  • autoResize: 当尺寸发生变化时,是否自动重新计算位置和尺寸,默认为 false 。
  • moveType: 滚动动画类型,包括 snap、freeScroll、snapFreeScroll,默认为 snap 。
  • duration: 动画过渡时间,默认为 500 。
  • ease: 动画过渡函数,默认为 \”cubic-bezier(0.25, 0.1, 0.25, 1.0)\” 。
  • deceleration: 动画减速度,默认为 0.0075 。

此外,Flicking.js 还提供了回调函数,如 beforeMovemovedwillChangeEventchangedEventmoveStartmoveEnd,允许用户在特定事件发生时执行自定义逻辑 。对于 React 用户,Flicking.js 还提供了一些 React 特有的配置选项,如 viewportTag、cameraTag、cameraClass、renderOnSameKey 等。

更多内容参考官方文档[3]

Flicking.js 是一个专注于滑动性能和交互特性的轮播组件库,它支持手势滑动、全屏滑动和响应式布局。Swiper 是一个现代化的纯 JavaScript 滑动库,以其高性能和丰富的API而闻名。

Flicking.js 与 Swiper 相比有哪些优点?

  1. 轻量级:相对于 SwiperFlicking.js 可能更加轻量,加载和运行速度更快。
  2. 易于集成:支持多种前端框架,如 ReactVue 等,易于在现代前端项目中集成。
  3. 丰富的配置选项:提供多种配置选项,如对齐方式、循环播放、边界限制等。
  4. 支持TypeScript:完全使用 TypeScript 编写,提供准确的类型定义。
  5. 支持SSR:设计上支持服务器端渲染,适用于 Next.jsNuxt.js 等 SSR 框架。

选择 SwiperFlicking.js 时应根据实际情况做出选择,如果需要一个功能全面、社区支持广泛的轮播图插件,Swiper 可能是更好的选择。如果项目需要一个轻量级、易于集成且支持现代前端框架的解决方案,Flicking.js 可能更加合适。

Flicking 以其出色的性能和灵活性,为开发者提供了一个强大的工具,轻松实现滚动动画和交互效果。无论是创建无缝的无限滚动列表,还是打造动态网格布局,Flicking 都能够提供必要的支持。它的易用性和可扩展性,使其成为提升用户交互体验的Web项目的理想选择。希望通过本次分享能为你的组件库带来新的选择。

祝好!

[1] Github Star: 2.7k: https://github.com/naver/egjs-flicking[2] 官网: https://naver.github.io/egjs-flicking/[3] 官方文档: https://naver.github.io/egjs-flicking/Options#ui–layout

前端轮播图怎么做?JavaScript来帮你轻松搞定

效果图

思路分析:

1、开启一个定时器

方法名:window.setInterval(code,MilliSec),每隔指定的时间就执行code,无限次执行。

2、定时器函数主要是用来执行图片轮播的效果

3、当鼠标放在图片上面时,图片就停止了轮播的效果 清除了定时器

方法名:window.clearInterval (timer),清除指定的定时器。

 4、当鼠标离开图片上面时,图片继续在执行轮播的效果 重新开启了定时器功能

5、当鼠标放在li标签上面时,图片就停止了轮播的效果 清除了定时器

6、当鼠标放在li标签上面时,还会显示li标签上面对应的数字的图片

7、当鼠标离开li标签上面时,图片就会继续开始轮播的效果 重新开启了定时器功能

8、li标签上面的高亮效果,它是随着图片滚动而滚动。

HTML代码

JS代码

以上就是轮播图怎么做的详细内容,更多请关注其它相关文章!

更多技巧请《转发 + 关注》哦!

JS实现轮播图案例(一看就懂,逻辑清晰)

实现如图所示的轮播图,要实现的功能主要有:

鼠标经过轮播图模块,左右按钮显示,离开隐藏左右按钮。

点击右侧按钮一次,图片下滑一张;点击左侧按钮,图片上滑一张。

图片播放的同时,下面小圆圈模块跟随一起变化。

点击小圆圈,可以播放相应图片。

鼠标不经过轮播图,轮播图也会自动播放。

鼠标经过,轮播图模块自动播放停止。

1.

页面结构如下:

2.

1.

页面样式

2.

鼠标经过轮播图模块,左右按钮显示,离开隐藏左右按钮

通过定时函数,每隔一小段时间不断调用animate函数,每次调整图片向左的偏移量,实现滑动的动画效果。

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。