JavaScript 实现京东风格商品分类侧边栏

作者:像素漫游时间:2026-10-25 00:02:17浏览:221

本文介绍如何使用原生 JavaScript 和 CSS 实现类似京东网站的分类侧边栏效果。通过监听页面滚动事件,动态控制侧边栏的显示、隐藏及固定定位,结合 CSS 样式美化列表交互,提供完整的 HTML、CSS 和 JS 代码示例供参考。

京东分类侧边栏实现方案

本文分享了一段使用 JavaScript 实现京东商品分类侧边栏的完整代码示例,供学习者参考。

京东分类侧边栏实现方案

首先是 HTML 结构的构建。

HTML 结构搭建


<div>
  <img src="/1.png" alt="">
 </div>
 <ul>
  <li><a href="">京东秒杀</a></li>
  <li class="two"><a href="">欢迎</a></li>
  <li><a href="">特色优选</a></li>
  <li><a href="">频道广场</a></li>
  <li><a href="">为你推荐</a></li>
  <li class="two"><a href="">客服</a></li>
  <li style="border-bottom: none;" class="two"><a href="">反馈</a></li>
</ul>

接着定义相关的 CSS 样式,包括布局、颜色及交互效果。

CSS 样式设计


<style>
  * {
   margin: 0;
   padding: 0;
  }

  a {
   text-decoration: none;
   color: #000;
  }

  div {
   width: 100%;

  }

  img {
   margin-left: 300px;
   display: block;
   margin: 0 auto;
  }

  ul {
   position: absolute;
   display: none;
   top: 350px;
   left: 1700px;
   width: 60px;
   height: 400px;
   border: 1px solid red;
   box-sizing: border-box;

  }

  ul li {
   width: 100%;
   height: 57px;
   list-style: none;
   text-align: center;
   float: right;
   padding: 5px 10px;
   line-height: 26px;
   text-align: center;
   float: left;
   box-sizing: border-box;
   border-bottom: 1px solid #eee;
  }

  li:hover {
   background-color: red;
  }

  li:hover a {
   color: white;
  }

  .two {
   line-height: 52px;
  }

最后通过 JavaScript 代码处理滚动逻辑,实现侧边栏的动态显示与固定定位。

JavaScript 交互逻辑


<script>
  document.addEventListener('scroll', function () {
   var ul = document.querySelector('ul')
   console.log(window.pageYOffset)
   if (window.pageYOffset > 700) {
    ul.style.display = 'block'
    ul.style.position = 'fixed';
   } else {
    ul.style.display = 'none'
   }
  })
</script>

以上即为该功能的全部实现内容,希望能为读者的学习提供便利,也欢迎继续支持本站获取更多技术分享。

作者最新文章