React使用Swiper实现3D coverflow 效果
下面是.ts文件代码
import React, { useEffect } from 'react';
import classnames from 'classnames';
import { Row } from 'antd';
import styles from './index.less';
const Videoportal = () => {useEffect(() => {const a = new Swiper('.swiper-container2', {effect: 'coverflow',grabCursor: true,centeredSlides: true,initialSlide: 2,slidesPerView: 'auto',// slidesPerView: 3,coverflowEffect: {rotate: 50,stretch: 90,depth: 100,modifier: 1,slideShadows: true,},navigation: {nextEl: '.swiper-button-next',prevEl: '.swiper-button-prev',},});}, []);return (<Row className={styles.videoContainer}><Row className={styles.videoBox}><div className={styles.title}>视频门户</div><divclassName={classnames({'swiper-container2': true,[styles.swiper]: true,})}><divclassName={classnames({'swiper-wrapper': true,[styles.wrapper]: true,})}><divclassName={classnames({'swiper-slide': true,[styles.slide1]: true,})}></div><divclassName={classnames({'swiper-slide': true,[styles.slide2]: true,})}></div><divclassName={classnames({'swiper-slide': true,[styles.slide3]: true,})}></div><divclassName={classnames({'swiper-slide': true,[styles.slide4]: true,})}></div><divclassName={classnames({'swiper-slide': true,[styles.slide5]: true,})}></div><divclassName={classnames({'swiper-slide': true,[styles.slide6]: true,})}></div></div></div></Row><Row className={styles.occlusion_left}></Row><Row className={styles.occlusion_right}></Row><divclassName={classnames({'swiper-button-prev': true,[styles.prev]: true,})}></div><divclassName={classnames({'swiper-button-next': true,[styles.next]: true,})}></div></Row>);
};export default Videoportal;
.less文件代码
.videoContainer {width: 100%;height: 100%;.videoBox {width: 100%;height: 100vh;background-color: #fff;user-select: none;display: flex;flex-direction: column;align-items: center;.title {padding-top: 80px;width: 100%;font-size: 34px;font-weight: bold;color: #333333;}background-color: #fff;overflow: hidden;width: 950px;.swiper {padding-top: 100px;width: 100%;.wrapper {width: 100%;margin-top: 100px;}.slide1 {background-image: url(../../../../assets/portal/bg1.png);}.slide2 {background-image: url(../../../../assets/portal/bg1.png);}.slide3 {background-image: url(../../../../assets/portal/bg1.png);}.slide4 {background-image: url(../../../../assets/portal/bg1.png);}.slide5 {background-image: url(../../../../assets/portal/bg1.png);}.slide6 {background-image: url(../../../../assets/portal/bg1.png);}.slide1,.slide2,.slide3,.slide4,.slide5,.slide6 {background-position: center;background-size: cover;width: 400px;height: 318px;}:global(.swiper-slide-shadow-left) {background-image: none !important;}:global(.swiper-slide-shadow-right) {background-image: none !important;}}}
}
.prev {z-index: 3000;position: absolute;left: 100px;background-image: url(../../../../assets/portal/left.png);
}
.next {position: absolute;right: 100px;background-image: url(../../../../assets/portal/right.png);
}
另外需要在document文件中导入Swiper的js文件和css文件
<link rel="stylesheet" href="https://unpkg.com/swiper/swiper-bundle.css">
这个是云上的CSS文件
<script src="https://unpkg.com/swiper/swiper-bundle.min.js"> </script>
这是云上的js文件,以上都是Swiper6的,可以自己下载下来放在自己的CDN上面
最后一定要注意:如果需要new多个实例,每个的名字不能一样,否则会覆盖掉上一个,可以用不同的选择器来作为每个实例的标识,解决
React使用Swiper实现3D coverflow 效果相关推荐
- Vue项目中使用swiper插件开发3d轮播图
在开发过程中有3D轮播图的需求,使用vue-awesome-swiper完成 先贴个效果图 安装npm install swiper@5.4.5 vue-awesome-swiper -S 全局引入并 ...
- Swiper制作3d旋转木马轮播
Swiper制作3d旋转木马轮播 现在html5页面效果用户体验要求原来越高了,慢慢出现了好多小伙伴需要使用到类似3d效果的旋转木马轮播,现本人通过Swiper插件制作一个该效果,下面会附上效果图和源 ...
- swiper叠加轮播效果 (含源码) - 案例篇
swiper叠加轮播效果(含源码) - 效果图 效果图: 图片素材来源于网络. [swiper 源码效果 · 对比地址] 代码: <!DOCTYPE html> <html lang ...
- 在react中用echarts实现3d地球
在react中用echarts实现3d地球 1.安装echarts,和3d,去官网看如何安装就行 2.导入import echarts from 'echarts' import echartsGL ...
- react可视化项目 ECharts 3D区域地图图表+点击取消高亮黄色
react 可视化项目 ECharts 3D区域地图图表 地图介绍 echarts图表引入 react页面中引入使用 地图介绍 做可视化项目时需要3d的区域地图,在网上搜到ECharts社区的一个其他 ...
- 用WPF轻松打造iTunes CoverFlow效果
用WPF轻松打造iTunes CoverFlow效果 原文:用WPF轻松打造iTunes CoverFlow效果 用WPF轻松打造iTunes CoverFlow效果 ...
- 在 React Native 中实现 3D 动画
本文的范围将涵盖对 Three.js 库和 Animated API 的探索. 您应该具备 JavaScript 和 React Native 的基本知识才能继续学习: 要了解更多关于可以在 Reac ...
- android 动画x轴旋转,Android Roate3dAnimation实现围绕y轴竖直方向或者绕x轴方向旋转的3d动画效果...
概要: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Roate3dAnim ...
- css和js实现3d图片,JavaScript_纯JS实现旋转图片3D展示效果,CSS:style type=text/cssgt - phpStudy...
纯JS实现旋转图片3D展示效果 CSS: #show{position:relative;margin:20px auto;width:800px;} .item{position:absolute; ...
最新文章
- 在idea中移除子模块Moudle后重新导入
- GD32F103内部Flash做虚拟U盘
- java hash取余_为什么Java的hash表的长度一直是2的指数次幂?为什么这个(hash(h-1)=hash%h)位运算公式等价于取余运算?...
- “数据资产化”线上论坛圆满结束!
- 受困版权,有情怀的网易云音乐还能走多远?
- JSP作业5:servlet应用--图片验证码
- 利用DHT网络原理制作bt采集蜘蛛
- 双三次插值 python实现_Python:用GPU实现双三次插值
- android apk更新下载以及安装
- html分享到微博,h5页面分享到微信、朋友圈、新浪微博、QQ空间、QQ好友组件
- 四季电台应用项目源码
- 作为应届大学生的我和准职业人的差距
- 微信应用域名所有权验证管理
- 图数据库统计、趋势2023
- 手把手教你搭建LAMP环境,运行第一个属于你的个人网站
- 「 生活太重要了,不能太过严肃 」:生命游戏之父、最神奇的数学家John Conway...
- lisp填挖横断面提取_求助,AUTOLISP语言的这个程序流程图怎么写。关于纵横断面绘制的...
- Cuda学习笔记(一)——sm流处理器簇对blocks的调度策略
- “倾倾计“第4期 | 科技创新,泛设计行业的跨界共生
- ank增大or缩小字体