当前位置: 首页 > news >正文

原生javascript实现左右滑动的平缓效果

原生javascript实现左右滑动的平缓效果

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
	<style>
		#container {
			--c-width : 500px;
			--c-height : 50px;
			width: var(--c-width);
			height: var(--c-height);
			line-height: var(--c-height);
			position: relative;
			display: flex;
		}
		#container .item {
			width: calc(var(--c-width) / 2);
			height: var(--c-height);
			line-height: var(--c-height);
			text-align: center;
			color: #42b983;
			font-size: 20px;
		}
		#container .item.active {
			color: #ffffff;
		}
		#container #circle {
			padding: 5px;
			width: calc(var(--c-width) / 2);
			height: var(--c-height);
			border-radius: calc(var(--c-height)/2);
			position: absolute;
			transition: transform 0.3s ease-in-out; /* 使用 transform 过渡 */
			z-index: -10;
			background: #42b983;
		}
		#container #circle.active {
			transform: translateX(calc(var(--c-width) / 2));
		}
	</style>
</head>
<body>
	<div id="container">
		<div class="item active">个人版</div>
		<div class="item">企业版</div>
		<div id="circle"></div>
	</div>
</body>
<script>
	const  items = document.querySelectorAll('.item');
	const circle = document.getElementById('circle');
	items.forEach((item ) => {
		item.addEventListener('click', (event) => {
			circle.classList.toggle('active'); // 切换 active 类
			items.forEach((value ) => {
				value.style.color = '#42b983';
			});
			event.target.style.color = '#ffffff';
		});
	})
</script>
</html>

效果图
在这里插入图片描述

相关文章:

  • Spring Boot--@PathVariable、@RequestParam、@RequestBody
  • 学习springboot-Bean管理(Bean 注册,Bean 扫描)
  • Oracle 10.2.0.5 DataGuard主从搭建-呆瓜式
  • 进程(下)【Linux操作系统】
  • HTMLCSS绘制三角形
  • 深入Python核心:模块管理、异常处理与迭代生成器全解析
  • Dify知识库 本地部署DeepSeek 开启智能体和工作流
  • 【操作系统】Linux基本命令2
  • 永磁同步电机无速度算法--基于复系数滤波的滑模观测器
  • Spring 中事务的实现
  • MySQL索引详解
  • 从零到一:如何系统化封装并发布 React 组件库到 npm
  • Vue 框架使用难点与易错点剖析:避开陷阱,提升开发效率
  • wow-rag学习|手搓RAG
  • Spring Boot
  • C语言 第四章 数组(2)
  • VMware 17 3389远程接入会出现无响应
  • 系统设计面试总结:5、加密算法的应用场景、哈希算法(MD、SHA、BCrypt)、对称加密(DES和3DES、AES)、非对称加密(RSA、DSA)
  • python系列之运算符
  • 重要!!! 改进 梯度方差(Fisher 信息近似) 指数移动平均
  • 不准打小孩:童年逆境经历视角下的生育友好社会
  • 中国建设银行浙江省分行原党委书记、行长高强接受审查调查
  • 银川市市长信箱被指已读乱回,官方回应
  • 国家核安全局局长:我国核电进入大规模建设高峰期,在建规模超其他国家总和
  • “90后”高层建筑返青春:功能调整的技术路径和运营考验
  • 万能险新规落地:保险期限不得低于五年,明确万能险销售“负面清单”