前端自定义按钮

本文介绍了如何在前端实现自定义按钮,通过HTML结构、JavaScript交互以及CSS样式来创建具有独特设计和功能的按钮。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

自定义按钮

HTML

		<div id='app'>
			<div class='button'>
			<div id='aqi' class='btn1 onClick' name='aqi' @click='EventChange'>AQI</div>
			<div id='pm25' class='btn2' name='pm25' @click='EventChange'>PM2.5</div>
			<div id='pm10' class='btn3' name='pm10' @click='EventChange'>PM10</div>
			<div id='so2' class='btn4' name='so2' @click='EventChange'>SO2</div>
		</div>
		</div>

JS

	<script>
		new Vue({
			el: '#app',
			data:{
				preButton: 'aqi', //存储上一个按钮的ID
			},
			created(){
				
			},
			mounted(){
				
			},
			methods:{
				EventChange(e){
					let arr_class = e.target.className.split(' ') //判断当前点击的按钮是否为已选按钮
					if(arr_class.length > 1){
						
					}else{
						//把上一个按钮的样式更改为没有点击的样式
						document.getElementById(this.preButton).className = document.getElementById(this.preButton).className.split(' ')[0];
						//把当前点击的按钮的样式更改为点击样式
						e.target.className = arr_class[0] + ' '+'onClick';
						//把当前按钮的ID赋值给preButton 方便下次点击时找到上一个按钮
						this.preButton = e.target.id;
					}
				},
			}
		})
	</script>

CSS

			.button{
				text-align: center;
				display: flex;
			}
			.button div{
				width: 50px;
				height: 30px;
				line-height: 30px;
			}
			.btn1{
				border: 1px #bbbbbb solid;
				border-bottom-left-radius: 5px;
				border-top-left-radius: 5px;
			}
			.btn2{
				border-top: 1px #bbbbbb solid;
				border-bottom: 1px #bbbbbb solid;
			}
			.btn3{
				border: 1px #bbbbbb solid;
				border-right: 0;
			}
			.btn4{
				border: 1px #bbbbbb solid;
				border-bottom-right-radius: 5px;
				border-top-right-radius: 5px;
			}
			/* 点击按钮的样式 */
			.onClick{ 
				background-color: #1989FA;
				color: #FFFFFF;
			}
			/* 不点击按钮的样式 */
			.unClick{
				background-color: #FFFFFF;
				color: #000000;
			}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值