【CSS3 + JQuery】實現手風琴效果
阿新 • • 發佈:2020-12-25
技術標籤:程式碼例項js互動設計javascriptcsshtml
描述: 實現手風琴效果
1.簡易版(純JQ,不帶動畫)
劃上每一個標題, 讓其緊跟的圖片寬度變成295px,其餘圖片寬度變成0
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0" >
<title>手風琴</title>
<style>
* {
margin: 0;
padding: 0;
list-style: none;
}
.active {
display: block;
}
#wrap {
width: 375px;
height: 190px;
margin: 20px auto;
border: 1px solid #333;
}
#wrap ul li span {
display: inline-block;
width: 20px;
height: 190px;
color: #ffffff;
cursor: pointer;
text-align: center;
}
#wrap ul li:nth-of-type(1) span {
background-color: #330033;
float: left;
}
#wrap ul li:nth-of-type(2) span {
background-color: #ff00ff;
float: left;
}
#wrap ul li:nth-of-type(3) span {
background-color: #990033;
float: left;
}
#wrap ul li:nth-of-type(3) span {
background-color: #990033;
float: left;
}
#wrap ul li:nth-of-type(4) span {
background-color: #ff0000;
float: left;
;
}
#wrap ul li img {
width: 0px;
height: 190px;
float: left;
}
#wrap ul li .active {
width: 295px;
}
</style>
</head>
<body>
<!-- 1.佈局 -->
<!-- 2. 手風琴
佈局: 4個標題 + 1張圖片的寬度
劃上每一個標題 讓她緊跟的圖片寬度變成270 其餘圖片寬度變成0 -->
<div id="wrap">
<ul>
<li>
<span>第一幅圖的展示效果</span>
<img src="./imgs/1.jpg" alt="" class="active">
</li>
<li>
<span>第二幅圖的展示效果</span>
<img src="./imgs/2.jpg" alt="">
</li>
<li>
<span>第三幅圖的展示效果</span>
<img src="./imgs/3.jpg" alt="">
</li>
<li>
<span>第四幅圖的展示效果</span>
<img src="./imgs/4.jpg" alt="">
</li>
</ul>
</div>
<script src="./jquery.js"></script>
<script>
/* 劃上每一個標題 讓她緊跟的圖片寬度變成270 其餘圖片寬度變成0 */
$('span').mouseenter(function () {
// console.log($(this));
/* // 排他
$('img').removeClass('active');
// 將標題對應的圖片顯示出來
$(this).next().addClass('active'); */
$(this).next().addClass('active').parent().siblings().children('img').removeClass('active');
})
</script>
</body>
</html>