私はcssとJQueryにまったく慣れていないので、この問題にかなり混乱しています。私のコードは以下のように非常に短いです:
<script>
$(document).ready(function(){
$(".square-2").hide();
$(".square-3").hide();
$("#btn-1").click(function(){
$(".square-2").fadeOut(); $(".square-3").fadeOut(); $(".square-1").fadeIn();
});
$("#btn-2").click(function(){
$(".square-1").fadeOut(); $(".square-3").fadeOut(); $(".square-2").fadeIn();
});
$("#btn-3").click(function(){
$(".square-1").fadeOut(); $(".square-2").fadeOut(); $(".square-3").fadeIn();
});
});</script>
</head>
<body>
<div id="container">
<div id="square" class="square-1"></div>
<div id="square" class="square-2"></div>
<div id="square" class="square-3"></div>
</div>
<center><button id="btn-1">square-1</button><button id="btn-2">square-2</button><button id="btn-3">square-3</button></center>
</body>
また、対応する css ファイルは次のとおりです。
#container{
width:300px;
margin:auto auto;
position:relative;
border:1px solid;
}
#square{
position:relative;
margin:auto auto;
width:200px;
height:200px;
}
.square-1{
background:#CC66CC;
}
.square-2{
background:#FFFF00;
}
.square-3{
background:#66FF00;
}
私が持っているのは同じサイズの正方形が 3 つしかないので、それらをすべて同じ場所に配置したいと考えています。各ボタンをクリックすると、対応する正方形がフェードインし、他の 2 つがフェードアウトするようにします。効果を実現するには、 div idとクラスをどのように使用すればよいですか?
PS: 同じ html で同じ名前の id を複数使用することは、良い習慣ではないと聞きました。たとえば、ここでは「四角形」です。では、この問題にどのように対処すればよいでしょうか。
ありがとう!