JS原生制作手风琴特效

我们在做开发时经常会遇到类似手风琴特效的需求,虽说现在的类库插件十分漂亮,偶尔有时间还是喜欢写一下原生的特效,欢迎各位评论指正,共同进步!


html代码如下:

  <ul>
    <li><img src="imgs/CAR.png" alt="pic"></li>
    <li><img src="imgs/car.png" alt="pic"></li>
    <li><img src="imgs/car2.jpg" alt="pic"></li>
    <li><img src="imgs/bmds.jpg" alt="pic"></li>
    <li><img src="imgs/star.jpg" alt="pic"></li>
  </ul>

css代码如下:

ul {
 list-style: none;
 width: 1000px;
 height: 400px;
 margin: 100px auto 20px auto;
 padding: 0;
 border: 5px solid #6f1;
}

li {
  overflow: hidden;
  float: left;
  width: 20%;
  height: 100%;
}

li img {
  display: block;
  w
  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
HTML手风琴下拉菜单是一种常见的网页设计元素,它可以在有限的空间内展示多个内容块,并通过点击或悬停来展开或折叠这些内容块。下面是一个简单的HTML手风琴下拉菜单的实现方式: 1. 使用HTML结构创建手风琴容器: ```html <div class="accordion"> <div class="accordion-item"> <h3 class="accordion-header">标题1</h3> <div class="accordion-content"> <p>内容1</p> </div> </div> <div class="accordion-item"> <h3 class="accordion-header">标题2</h3> <div class="accordion-content"> <p>内容2</p> </div> </div> <!-- 添加更多的accordion-item --> </div> ``` 2. 使用CSS样式设置手风琴的外观和交互效果: ```css .accordion { width: 100%; } .accordion-item { border: 1px solid #ccc; margin-bottom: 10px; } .accordion-header { background-color: #f5f5f5; padding: 10px; cursor: pointer; } .accordion-content { padding: 10px; display: none; } .accordion-item.active .accordion-content { display: block; } ``` 3. 使用JavaScript或jQuery添加交互功能: ```javascript // 使用原生JavaScript实现 var accordionItems = document.querySelectorAll('.accordion-item'); accordionItems.forEach(function(item) { var header = item.querySelector('.accordion-header'); header.addEventListener('click', function() { item.classList.toggle('active'); }); }); // 使用jQuery实现 $('.accordion-header').click(function() { $(this).parent('.accordion-item').toggleClass('active'); }); ``` 这样,当用户点击手风琴的标题时,对应的内容块会展开或折叠显示。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值