基于JavaScript实现全屏滚动与侧边导航效果

作者:白露

时间:2026-10-22

浏览:214

本文介绍如何使用JavaScript结合CSS实现网页的全屏滚动效果及侧边导航功能。通过定义全屏列表项与固定定位的侧边栏,配合JavaScript逻辑控制滚动行为,实现类似单页应用的用户体验。代码包含HTML结构、CSS样式及JS交互逻辑,适合前端开发者参考学习。

文章目录

屏幕滚动效果实现原理

实现屏幕滚动效果的核心在于结合HTML结构、CSS样式与JavaScript逻辑。首先,需要构建基本的页面框架,包括用于展示内容的滚动区域和用于导航的侧边栏。

HTML与CSS结构配置


<html>
<head lang="en">
 <meta charset="UTF-8">
 <title></title>
 <style>
  ul,ol {
   list-style-type: none;
  }
  * {margin:0;padding:0;}
  html,body {
   width: 100%;
   height: 100%;
  }
  #ul {
   width: 100%;
   height: 100%;
  }
  ul li{
   width: 100%;
   height: 100%;
  }
  #ol {
   position: fixed;
   top:0;
   left:50px;
  }
  #ol li {
   width: 50px;
   height: 50px;
   border: 1px solid #000;
  }
 </style>
 <script src="my.js" type="text/javascript"></script>
 <script>
  window.onload = function() {
   var ulBox = $("ul");
   var ulBoxLi = ulBox.children;
   var olBox = $("ol");
   var olBoxLi = olBox.children;
   var bgColor = ["pink","purple","orange","blue","green"];
   var leader = 0,target = 0,timer = null;
   for(var i= 0; i<ulBoxLi.length; i++)
   {
    ulBoxLi[i].style.backgroundColor = bgColor[i];
    olBoxLi[i].style.backgroundColor = bgColor[i];
    olBoxLi[i].index = i; // 记录当前的索引号
    olBoxLi[i].onclick = function() {
     clearInterval(timer);
     target = ulBoxLi[this.index].offsetTop; // 核心语句
     timer = setInterval(function() {
      leader = leader + (target - leader ) /10;
      window.scrollTo(0,leader); // 屏幕滑动
      //pic.style.left = leader + 'px';
     },30)
    }
   }
  }
 </script>
</head>
<body>
<ul id="ul">
 <li>首页</li>
 <li>关注</li>
 <li>动态</li>
 <li>风格</li>
 <li>作品</li>
</ul>
<ol id="ol">
 <li>首页</li>
 <li>关注</li>
 <li>动态</li>
 <li>风格</li>
 <li>作品</li>
</ol>
</body>
</html>

滚动效果展示

具体效果表现为:页面内容能够随着用户操作或代码逻辑进行全屏切换,同时侧边导航栏保持固定显示,方便用户快速跳转至对应板块。这种布局常见于单页应用或产品展示页面,旨在提升用户体验和视觉连贯性。

屏幕滚动效果实现原理

总结

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章