js怎么实现三个按钮点击那个那个更换样式

JavaScript015

js怎么实现三个按钮点击那个那个更换样式,第1张

可以尝试以下操作:

html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312" />

<title>js控制按钮样式切换</title>

<link href="css/my.css" rel="stylesheet">

</head>

<script type="text/javascript">

//左边按钮的点击事件

window.onload = function(){

var arr = document.getElementsByTagName('button')

for(var i = 0i<arr.lengthi++){

arr[i].onclick = function(){

//this是当前激活的按钮,在这里可以写对应的操作

if(this.className == 'btn1'){

this.className = 'btn2'

var name = this.id

var btn = document.getElementsByClassName('btn2')

for(var j=0j<btn.lengthj++){

if(btn[j].id!=name){

btn[j].className = 'btn1'

}

}

}

}

}

}

</script>

<body>

<div id="main" style="margin:auto 0">

<!--四个按钮-->

<div style="margin-top:2em">

<div style="width:20%"><button id = "1" type = "button">按钮1</button></div>

<div style="width:20%"><button id = "2" type = "button">按钮2</button></div>

<div style="width:20%"><button id = "3" type = "button">按钮3</button></div>

<div style="width:20%"><button id = "4" type ="button">按钮4</button></div>

</div>

</div>

</body>

</html>

假设有div元素<div id="mydiv" class="css1">,和两个样式: .css1{} .css2{}

(1)移除和添加样式分别是$("mydiv").removeClass("css1") 和$("mydiv").addClass("css1")

(2)如果是换了样式之后,想换回原来的样式,即是切换样式,那么就涉及到一个判断当前样式的问题,此时可以使用方法hasClass(),该方法是判断元素当前是否含有某样式。

(3)所以根据1、2可以实现一个点击切换样式的效果,示例代码如下:

<script type="text/javascript">

$("#mydiv").click(function () {

if ($(this).hasClass("css1")) {

$(this).removeClass("css1")

$(this).addClass("css2")

} else if ($(this).hasClass("css")) {

$(this).removeClass("css2")

$(this).addClass("css1")

}

})

</script>

(手写不易,望采纳!)

<style type="text/css">

#mydiv{

width:400px

height:300px

border:2px solid gray

}

.s{

color:red

font-size:20px

}

</style>

<script type="text/javascript">

function clickMe(){

var div=document.getElementById("mydiv")

var className=div.className

if(className!=""){

div.className=""

}else{

div.className="s"

}

}

</script>

<div id="mydiv">

这是一个层

</div>

<input type="button" value="切换样式" onclick="clickMe()" />