JavaScript 实现简单手风琴效果代码示例
作者:拾光时间:2026-10-24 16:18:08浏览:137
本文提供了一段使用 JavaScript 实现简单手风琴效果的完整代码示例。通过监听鼠标悬停事件,结合自定义的 startMove 函数控制列表项宽度变化,实现点击或悬停时展开当前项并收缩其他项的交互效果。代码包含 HTML 结构、CSS 样式布局及核心 JS 逻辑,适合前端初学者参考学习。
JavaScript 手风琴效果实现
本文分享了使用 JavaScript 实现手风琴特效的具体代码,供读者参考学习。
最终呈现的视觉效果如下:

具体实现代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
*{
margin:0;
padding:0;
}
ul,li{
list-style:none;
}
.box{
width:1200px;
height:260px;
margin:50px auto 0;
overflow: hidden;
}
.list{
width:2000px;
height:260px;
}
.list>li{
width:200px;
height:260px;
float:left;
background-image:url(images/1.jpg);
background-position:center center;
background-repeat:no-repeat;
}
.list>li:nth-child(2){
background-image:url(images/2.jpg);
}
.list>li:nth-child(3){
background-image:url(images/3.jpg);
}
.list>li:nth-child(4){
background-image:url(images/4.jpg);
}
.list>li:nth-child(5){
background-image:url(images/5.jpg);
}
.list>li:nth-child(6){
background-image:url(images/6.jpg);
}
</style>
</head>
<body>
<div class="box">
<ul class="list">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
<script src="js/startmove.js"></script>
<script>
var oLis = document.getElementsByClassName("list")[0].children;
for(var i = 0; i < oLis.length; i++){
oLis[i].onmouseover = function(){
for(var j = 0; j < oLis.length; j++){
startMove(oLis[j],{
width:160
},50)
}
startMove(this,{
width:400
},50)
}
oLis[i].onmouseout = function(){
for(var j = 0; j < oLis.length; j++){
startMove(oLis[j],{
width:200
},10)
}
}
}
</script>
</body>
</html>
以上就是本文的全部内容,希望对读者的学习有所帮助,也欢迎大家继续支持本站。
作者最新文章
JS处理含Emoji或中文的字符串转数组乱码问题
2026-11-05 16:12:28
JS怎么使用展开运算符合并对象
2026-11-05 14:42:18
ES6+环境下判断JS对象为空的简洁写法
2026-11-05 12:12:23
怎么通过replacer函数自定义JS中JSON的格式化输出
2026-11-05 11:19:44
JS正则表达式基础:字面量与RegExp构造函数的区别及常用元字符
2026-11-05 11:16:58
