小案例:页面滚动事件以及导航栏点击

2023-11-17

HTML

  • html实现方法一:
    导航栏a标签href ,要与下列div中id属性对应,点击a标签即可滑动到对应id的div
<div class="navbar">	//导航栏
	<ul class="rightheader">
		<li><a class="page-scroll scroll active" href="#home">主页</a></li>
		<li><a class="page-scroll scroll" href="#about">关于我</a></li>
		<li><a class="page-scroll scroll" href="#edu">教育经历</a></li>
		<li><a class="page-scroll scroll" href="#project">项目经验</a></li>
		<li><a class="page-scroll scroll" href="#skills">技能/证书</a></li>
		<li><a class="page-scroll scroll" href="#contact">联系我</a></li>
		<li><input onclick="show()" id="btn-lr" type="button" value="登录/注册" class="login"></input></li>
	</ul>
</div>

<!-------------主页------------------>
<div class="main" id="home">
....
</div>

CSS

.active{  //点击后的样式
	background: #FFF;
	color:black;
}

JS

  • $(this).attr(“href”) 获取所点击的a标签的href属性
  • scrollTop: ( ( ((this).attr(“href”)).offset().top -30+ “px” 设置当前页面高度位置
  • animate(,2000) 增加2s动画
$(document).ready(function(){
	$("ul li a").click(function(){	//点击a标签事件
		$("html, body").animate({scrollTop: $($(this).attr("href")).offset().top -30+ "px"}, 2000);	 
  		 return false;		//不要这句会有点卡顿
	});	
});

滚动页面事件

  • $(aHref).offset().top 根据ahref获取对应的id元素 获取离顶部的距离
  $(document).scroll(function() {
        var scroH = $(window).scrollTop();  //当前滚动高度

   			//循环获取a标签下的href 判断
   			$("ul li a").each(function(){
   				var aHref =$(this).attr("href");	//获取到当前点击的a标签的href
				if(scroH >=($(aHref).offset().top-100)){	//判断当前位置是否到达获取到的aHref页面位置
					$("ul li a").removeClass("active")	//先移除
					$(this).addClass("active")	//再添加样式
				}
			})
 
});

效果图:

点击导航栏 : 实现跳转到对应的div位置
滚动页面: 对于的导航栏标签样式改变
在这里插入图片描述在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

小案例:页面滚动事件以及导航栏点击 的相关文章

  • 使用 .add() 选择多个 jQuery 对象

    是否 add http api jquery com add 方法允许一次选择多个对象而不是一次添加一个 one add two add three add four on click function 以下变量的设置方式相同 因为每个变量
  • 如何使用 jQuery 在按下按钮后保持按钮处于活动状态

    我见过一些非常相似的问题 但一直无法找到我正在寻找的答案 我已经确定了解决方法 但想知道执行该任务的正确方法 我想要的是单击按钮并使活动状态保持不变 下一次单击将切换状态 这是所需的 我真正需要知道的是如何解决 uiButton activ
  • 未捕获的类型错误:无法读取未定义的属性“prop”

    我有 6 个输入复选框 如果选中的复选框超过 3 个 则最后一个复选框将被取消选中 为了更好地理解 请参阅我之前的question https stackoverflow com questions 35195235 if checkbox
  • jQuery 选择器定位具有 id AND class 的元素不起作用

    我有以下事件处理函数 jQuery document on click button submitb function e alert jQuery 包含在 html 文档中 但是 如果我点击 div class submitb Go di
  • knockoutjs通过点击事件获取元素id

    我正在使用 knockoutjs 目前我认为有些东西看起来像这样 img src images image1 png 这允许我获取视图模型中的元素 ID pressedTab function tab console log Element
  • SlickGrid 回调onRowSelect?

    我想在用户选择表中的一行时添加回调 但我不知道该怎么做 这是我到目前为止所拥有的
  • 关于JSON和序列化的问题

    我的视图模型有一个强类型视图 其中包含一个对象 Person 和一个技能列表 人是很直率的 我像这样使用 Html Helpers Html TextBoxFor m gt m Person FirstName 我提交表格并得到我想要的 问
  • Fullcalendar 不显示 15 分钟时段的轴时间

    我将全日历设置为有 15 分钟时段 但它没有显示分钟突破 例如 它将显示上午 9 点 上午 10 点 上午 11 点等 但不显示上午 9 点 上午 9 15 上午 9 30 等 它显示了其他时段的分钟突破 例如 10 分钟 但我无法让它工作
  • 如何在 Google 地图 InfoWindow 中使用 Jquery?

    我想在 Google 地图 InfoWindow 中显示 jQuery 效果 显示和隐藏 div 我该怎么做 尽管我个人还没有尝试过 但这 gt http code google com p jquery ui map http code
  • jquery 文本旋转

    我在 div 中有一个简单的文本 如下所示 div div This is an example text div div 我希望 div 内的文本旋转 20 30 度 我已经找到了this https stackoverflow com
  • clearTimeout 在 javascript 自动完成脚本中不起作用

    我使用以下代码作为自动完成脚本的一部分 以避免每次击键都会对服务器造成影响 var that this textInput bind keyup function clearTimeout that timer that timer set
  • 你可以有多个 $(document).ready(function(){ ... });部分?

    如果我在启动时有很多功能 它们都必须在一个功能下 document ready function 或者我可以有多个这样的语句吗 您可以拥有多个 但这并不总是最好的做法 尽量不要过度使用它们 因为这会严重影响可读性 除此之外 这是完全合法的
  • 如何从 ui 和事件获取类/id

    如何从中获取任何元素的 id 和类名ui event任何函数 请参阅下文以获得清晰的理解 div div div div div div div div JS function drag class draggable drop class
  • 将值设置为 aria-controls 输入

    我想设置一个输入咏叹调控制值 但我无法使用传统的 jQuery 方式来做到这一点 我的代码是这样的 function showMessage var message jQuery textToDisplay val example text
  • 按值对 JSON 进行排序

    我有一个非常简单的 JSON 对象 如下所示 people f name john l name doe sequence 0 title president url google com color 333333 f name micha
  • 如何在jquery中检索多个级别的所有子元素的类名?

    我想检索多个级别的子元素的类名 我正在尝试遵循 但它只给出了后子元素的类名 我究竟做错了什么
  • 左键单击 jQUEry 上下文菜单

    我在用Chris Domigan 的 jQuery 上下文菜单插件 http www trendskitchens co nz jquery contextmenu 应用上下文菜单 它是这样工作的 contacts tbody tr con
  • jQuery UI 内联日期选择器自动调整大小到父容器

    我正在使用 twitters bootstrap 的响应式网格系统和 jquery ui datepicker 我有一个inline row spanX 结构中的 datepicker 如下所示 div class row div clas
  • 仅隐藏那些选择了空值的选择框

    我只想隐藏那些选择了空值的选择框 我有以下 HTML 和 jQuery div class form item div
  • 角度 ng-repeat 根据条件添加样式

    我在 div 列表上使用 ng repeat 并且在渲染此 div 的 json 中手动添加项目 我需要定位我在 json 中添加的最后一个 div 它会自动在屏幕上渲染 即 couse 光标所在的位置 其余部分保持在相同位置 但没有给出渲

随机推荐

  • 线上服务平均响应时间太长,怎么排查?

    最困难的事情就是认识自己 个人网站 欢迎访问 前言 最近线上环境某个接口服务响应时间偏长 导致用户体验超差 那平时该怎么快速的排查这类问题呢 为代码添加上详细的打印日志 不建议 一是线上环境 没法随便的重新部署更换了详细日志的代码 二是 添
  • 合并数组,升序排列

    public class Demo22 给两个数组 数组A 1 7 9 11 13 15 17 19 数组B 2 4 6 8 10 两个数组合并成数组C 按着升序排序 public static void main String args
  • k-Means——经典聚类算法实验(Matlab实现)

    聚类算法 k Means实验 k 平均 k Means 也被称为k 均值 是一种得到最广泛使用的聚类算法 1 k Means算法以k为参数 把n个对象分为k个簇 使得簇内具有较高的相似度 实验目的 了解常用聚类算法及其优缺点 掌握k Mea
  • 迷你搜索引擎

    这几天在思考如何对项目做出扩展 当一个网站访问量上升之后随之而来的便是用户的大量交流 根据现在主流的交流方式来看 一般都是一个用户先进行发帖 然后其他用户在下面对之评论 评论系统暂且搁置一边不谈 现在有一个问题就是当帖子数量越来越多 如何快
  • vue使用loading加载

    1 效果 1649832674984 2 前言 在vue中提供v loading命令 用于div的loading加载 因为v loading需要绑定一个双向绑定的变量 因此会产生如果页面需要多个loading 则需要很多个变量 在此不必要的
  • 基于Flink+Hudi构建企业万亿级云上实时数据湖教程

    在工作中 我们发现AutoOptimize的优化 在一些场景中可以带来巨大的提升 其中的一些优化可以满足数仓的高性能查询需求 某些时候工程师需要对收集的数据 根据下游的不同场景处理需求 再次进行ETL处理 使得下游使用数据的时候 优化数据的
  • MRI-CEST原理与MRI几种序列

    目录 一 引言 二 核 磁 共振 三 CEST成像 四 弛豫模型 五 几种序列 一 引言 MRI核磁共振的基本原理为核 磁 共振 接下来会具体展开各个词的含义 而CEST成像则是基于Bloch McConnell方程 模拟化学交换的工具 因
  • 曲速未来 发布:区块链技术带来金融服务的信任变革

    区块链安全咨询公司 曲速未来 表示 近年来伴随着新技术的出现 创新资源流动加速 对全球的金融体系也带来了巨大的冲击 作为科技领域极具挑战性的创新之一 区块链 凭借其开放性 自治性 匿名性 不可篡改性等特点 带来了金融的信任变革 重构了传统金
  • conda更新软件包conda upgrade语句

    在虚拟环境中使用upgrade更新语句 例如更新tensorflow conda update tensorflow 要注意几个点 1 可能会更改相关的包的版本 它会检查该虚拟环境下conda环境中的包列表 并尝试更新其他的包来适应版本匹配
  • el-input系列(el-input、el-select等)palceholder 的样式设置

    el input系列所有带有palceholder的 修改palceholder的样式 为了避免样式污染 对placeholder先包一个父类 谷歌浏览器 父类 deep input webkit input placeholder col
  • 高等数学——驻点,拐点,极值点

    一 定义不同 1 极值点 若f a 是函数f x 的极大值或极小值 则a为函数f x 的极值点 极大值点与极小值点统称为极值点 极值点是函数图像的某段子区间内上极大值或者极小值点的横坐标 极值点出现在函数的驻点 导数为0的点 或不可导点处
  • 活体检测的几种手段分析

    人脸识别是判断你是否是你 而活体检测则为了确定人脸识别的你是不是活得你 基于这样的特性 活体检测可以有效的避免视频 图片的技术BUG 活体检测的手段比较多 目前比较通用的是人脸活体检测 但是实际应用中的还有指纹识别 虹膜识别 静脉识别 通过
  • 生成一个6位数的随机密码,且需要包括字符、数字、特殊符号

    实现思路 第一步 6位数的密码 且需要包括字符 数字 特殊符号这三个元素 将三个元素组成6位时每个元素的排列组合列举出来 第二步 从第一步的排列组合中随机抽取一个排列组合类型 i j k 第三步 从所有的字符 数字 特殊符号中随机抽取i个字
  • Zookeeper到底是干嘛的

    在Zookeeper的官网上有这么一句话 ZooKeeper is a centralized service for maintaining configuration information naming providing distr
  • 数据集笔记:杭州 & 上海 地铁客流数据

    数据集地址 PVCGN data at master liuwj2000 PVCGN github com 1 数据集介绍 从5 15到23 30的地铁乘客流量预测 使用前四个时间间隔 15分钟 x 4 60分钟 的地铁乘客流量 进 出流量
  • Python(1)--Python安装目录介绍

    DLLs Python 自己使用的动态库 Doc 自带的 Python 使用说明文档 include 包含共享目录都是 h的文件 Lib 库文件 放自定义模块和包 pip 安装下载的包会放这Lib site packages 这个路径可以修
  • 云原生微服务应用的平台工程实践

    作者 纳海 01 微服务应用云原生化 微服务是一个广泛使用的应用架构 而如何使得微服务应用云原生化却是近些年一直在演进的课题 国内外云厂商对云原生概念的诠释大同小异 基本都会遵循 CNCF 基金会的定义 云原生技术有利于各组织在公有云 私有
  • 形态学的图像处理

    数字形态学是图像处理与分析领域的重要工具之一 数学形态学可以用来解决抑制噪声 特征提取 边缘检测 图像分割 形状识别 纹理分析 图像恢复与重建 图像压缩等图像处理问题 本文将会对形态学的图像处理进行一些通俗的原理解释和Matlab代码验证
  • 初始C语言——数组的行和列互换

    define CRT SECURE NO WARNINGS 1 防止visual studio2013以上版本scanf报错 vc6 0环境可忽略 include
  • 小案例:页面滚动事件以及导航栏点击

    HTML html实现方法一 导航栏a标签href 要与下列div中id属性对应 点击a标签即可滑动到对应id的div div class navbar 导航栏 ul class rightheader li a class page sc