jQuery 导航自动跟随滚动的实现代码


Posted in jQuery onMay 30, 2018

具体代码如下所示:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> 
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>   
<c:set var="front" value="${frontPath}${pageContext.request.contextPath}/f"/> 
<c:set var="ajaxUrl" value="${frontPath}${pageContext.request.contextPath}"/> 
<c:set var="ctxStatic" value="${pageContext.request.contextPath}/static"/> 
<!DOCTYPE html> 
<html lang="en"> 
<head> 
  <meta charset="UTF-8"/> 
  <meta name="format-detection" content="telephone=no,email=no,adress=no"/> 
  <meta name="viewport" 
     content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no"/> 
  <meta name="apple-mobile-web-app-capable" content="yes"/> 
  <meta name="apple-mobile-web-app-status-bar-style" content="black"/> 
  <title>simpleNavFollowing</title> 
  <style> 
    * { 
      margin: 0; 
      padding: 0; 
    } 
    html, body { 
      position: relative; 
      height: 100%; 
    } 
    #nav { 
      position: fixed; 
      top: 50%; 
      left: 20px; 
      margin-top: -140px; 
      display: inline-block; 
      vertical-align: middle; 
    } 
    #nav a{ 
      display: block; 
      position: relative; 
      width: 98px; 
      height: 28px; 
      line-height: 28px; 
      text-align: center; 
      background-color: #eee; 
      color: #333; 
      border-left: 2px solid transparent; 
    } 
    #nav a:hover{ 
      width: 98px; 
      border-left: 2px solid #4b59ff; 
    } 
    #nav a p{ 
      position: relative; 
      z-index: 3; 
    } 
    #nav a.active{ 
      background-color: #4b59ff; 
      color: #fff; 
    } 
    #main { 
      max-width: 1200px; 
      margin: 0 auto; 
    } 
    #main div { 
      height: 300px; 
      background-color: #efefef; 
      border-top: 1px solid #ccc; 
    } 
    #main div:nth-child(2n) { 
      background-color: #fafafa; 
    } 
  </style> 
  <script src="http://www.jq22.com/jquery/jquery-1.10.2.js"></script> 
  <script> 
    $(function () { 
      var nav = $("#nav"); 
      var mainPage = $(".mainPage"); 
      var mainTopArr = new Array(); 
      for(var i=0;i<mainPage.length;i++){ 
        var top = mainPage.eq(i).offset().top; 
        mainTopArr.push(top); 
      } 
      $(window).scroll(function(){ 
        var scrollTop = $(this).scrollTop(); 
        var k; 
        for(var i=0;i<mainTopArr.length;i++){ 
          if(scrollTop>=mainTopArr[i]){ 
            k=i; 
          } 
        } 
        nav.find("a").eq(k).addClass("active").siblings().removeClass("active"); 
      }); 
      nav.find("a[href^='#']").click(function(e){ 
        e.preventDefault(); 
        $('html, body').animate({scrollTop: $(this.hash).offset().top}, 400); 
      }); 
    }); 
  </script> 
</head> 
<body> 
<div id="nav"> 
  <a href="#page1" rel="external nofollow" class="active">page1</a> 
  <a href="#page2" rel="external nofollow" >page2</a> 
  <a href="#page3" rel="external nofollow" >page3</a> 
  <a href="#page4" rel="external nofollow" >page4</a> 
  <a href="#page5" rel="external nofollow" >page5</a> 
  <a href="#page6" rel="external nofollow" >page6</a> 
  <a href="#page7" rel="external nofollow" >page7</a> 
  <a href="#page8" rel="external nofollow" >page8</a> 
  <a href="#page9" rel="external nofollow" >page9</a> 
  <a href="#page10" rel="external nofollow" >page10</a> 
</div> 
<div id="main"> 
  <div class="mainPage" id="page1">page1</div> 
  <div class="mainPage" id="page2" style="height: 400px;">page2</div> 
  <div class="mainPage" id="page3">page3</div> 
  <div class="mainPage" id="page4">page4</div> 
  <div class="mainPage" id="page5" style="height: 300px;">page5</div> 
  <div class="mainPage" id="page6">page6</div> 
  <div class="mainPage" id="page7">page7</div> 
  <div class="mainPage" id="page8">page8</div> 
  <div class="mainPage" id="page9" style="height: 900px;">page9</div> 
  <div class="mainPage" id="page10">page10</div> 
  <div class="mainPage" id="page11" style="height: 900px;">page11</div> 
</div> 
</body> 
</html>

总结

以上所述是小编给大家介绍的jQuery 导航自动跟随滚动的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

jQuery 相关文章推荐
jquery实现图片轮播器
May 23 jQuery
使用jQuery实现动态添加小广告
Jul 11 jQuery
JQuery EasyUI的一些常用组件
Jul 12 jQuery
jquery实现倒计时小应用
Sep 19 jQuery
jQuery实现滚动到底部时自动加载更多的方法示例
Feb 18 jQuery
详解jQuery中的isPlainObject()使用方法
Feb 27 jQuery
jQuery实现浏览器之间跳转并传递参数功能【支持中文字符】
Mar 28 jQuery
jQuery实现模糊搜索功能的方法分析
Jun 29 jQuery
jQuery实现获取及设置CSS样式操作详解
Sep 05 jQuery
jQuery实现input[type=file]多图预览上传删除等功能
Aug 02 jQuery
jQuery实现聊天对话框
Feb 08 jQuery
jquery实现鼠标悬浮弹出气泡提示框
Dec 23 jQuery
jQuery实现图片上传预览效果功能完整实例【测试可用】
May 28 #jQuery
关于jquery中attr()和prop()方法的区别
May 28 #jQuery
jQuery中将json数据显示到页面表格的方法
May 27 #jQuery
jQuery插件jsonview展示json数据
May 26 #jQuery
jQuery插件Validation表单验证详解
May 26 #jQuery
jQuery创建及操作xml格式数据示例
May 26 #jQuery
jquery ajaxfileuplod 上传文件 essyui laoding 效果【防止重复上传文件】
May 26 #jQuery
You might like
php实现指定字符串中查找子字符串的方法
2015/03/17 PHP
变量在 PHP7 内部的实现(一)
2015/12/21 PHP
PHP结合Mysql数据库实现留言板功能
2016/03/04 PHP
Jquery作者John Resig自己封装的javascript 常用函数
2009/11/09 Javascript
jquery 多行文本框(textarea)高度变化
2013/07/03 Javascript
js和html5实现手机端刮刮卡抽奖效果完美兼容android/IOS
2013/11/18 Javascript
关于jQuery中的each方法(jQuery到底干了什么)
2014/03/05 Javascript
jquery删除指定子元素代码实例
2015/01/13 Javascript
使用Angular缓存父页面数据的方法
2017/01/03 Javascript
jQuery滚动监听实现商城楼梯式导航效果
2017/03/06 Javascript
Vue from-validate 表单验证的示例代码
2017/09/26 Javascript
vue实现nav导航栏的方法
2017/12/13 Javascript
解决Mac node版本升级失败的问题
2018/05/16 Javascript
Vue指令指令大全
2019/02/09 Javascript
vue实现购物车列表
2020/06/30 Javascript
JavaScript实现刮刮乐效果
2020/11/01 Javascript
linux服务器快速卸载安装node环境(简单上手)
2021/02/22 Javascript
Eclipse + Python 的安装与配置流程
2013/03/05 Python
python 删除大文件中的某一行(最有效率的方法)
2017/08/19 Python
Python基于回溯法子集树模板解决找零问题示例
2017/09/11 Python
python2.7无法使用pip的解决方法(安装easy_install)
2018/04/03 Python
查看Django和flask版本的方法
2018/05/14 Python
python对文件目录的操作方法实例总结
2019/06/24 Python
python输出带颜色字体实例方法
2019/09/01 Python
Python爬虫防封ip的一些技巧
2020/08/06 Python
Pytest如何使用skip跳过执行测试
2020/08/13 Python
如何用H5实现一个触屏版的轮播器的实例
2017/01/09 HTML / CSS
VIVOBAREFOOT赤脚鞋:让您的脚做自然的事情
2017/06/01 全球购物
全球最大的户外用品零售商之一:The House
2018/06/12 全球购物
2013届毕业生求职信范文
2013/11/20 职场文书
社区春季防火方案
2014/06/02 职场文书
学生逃课检讨书
2015/02/17 职场文书
小学工作总结2015
2015/05/04 职场文书
爱国主义主题班会
2015/08/14 职场文书
小学教师教学随笔
2015/08/14 职场文书
2016大一新生入学教育心得体会
2016/01/23 职场文书