关于JavaScript如何实现导航栏吸顶操作的实例分享
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <style type="text/css"> body { padding:0; margin:0; } #nav { width:100%; height:60px; background:#39f; color:#fff; line-height:60px; text-align:center; padding:0; margin:0; list-style:none; } #nav li { float:left; width:20%; height:60px; } .fix { position:fixed; top:0; left:0; } </style> </head> <div class="wrap"> <h1>在线书城</h1> <p>有没有一本书让你仿佛遇到春风十里</p> <ul id="nav"> <li>加入购物车</li> <li>加入收藏</li> <li>立即购买</li> </ul> <div class="con"> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> <p>好书有好事有好诗</p> </div> </div> <script type="text/javascript"> var tit = document.getElementById("nav"); //alert(tit); //占位符的位置 var rect = tit.getBoundingClientRect();//获得页面中导航条相对于浏览器视窗的位置 var inser = document.createElement("div"); tit.parentNode.replaceChild(inser,tit); inser.appendChild(tit); inser.style.height = rect.height + "px"; //获取距离页面顶端的距离 var titleTop = tit.offsetTop; //滚动事件 document.onscroll = function(){ //获取当前滚动的距离 var btop = document.body.scrollTop||document.documentElement.scrollTop; //如果滚动距离大于导航条据顶部的距离 if(btop>titleTop){ //为导航条设置fix tit.className = "clearfix fix"; }else{ //移除fixed tit.className = "clearfix"; } } </script> </html>
当页面向下滚动时超过了吸顶导航的初始位置时,需要把吸顶导航栏固定在窗口顶部,一般吸顶导航栏还可以替换成文章标题栏,搜索框、tab条等等,例如百度糯米,天猫,淘宝最为常用。它们共同点是在内容或者功能上比较重要,但又不是最重要的元素,最重要的一般会放置于顶部。
1.实现思路是监听 scroll 事件,判断当前页面的滚动位置,当滚动距离大于导航条距顶部的距离时,为导航条采用窗口定位。
2.与“回到顶部“的实现方法一样,但是会发现实现吸顶功能时,到了临界位置时,页面会抖动一下,因为当导航条fixed出去,下部内容填补了导航条离开的位置。抢占了导航条的位置,所以抖动了一下。此处我们设置一个占位符,守住导航条的位置。
效果如下:
以上是关于JavaScript如何实现导航栏吸顶操作的实例分享的详细内容。更多信息请关注PHP中文网其他相关文章!

去掉重复并排序的方法:1、使用“Array.from(new Set(arr))”或者“[…new Set(arr)]”语句,去掉数组中的重复元素,返回去重后的新数组;2、利用sort()对去重数组进行排序,语法“去重数组.sort()”。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于Symbol类型、隐藏属性及全局注册表的相关问题,包括了Symbol类型的描述、Symbol不会隐式转字符串等问题,下面一起来看一下,希望对大家有帮助。

怎么制作文字轮播与图片轮播?大家第一想到的是不是利用js,其实利用纯CSS也能实现文字轮播与图片轮播,下面来看看实现方法,希望对大家有所帮助!

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于对象的构造函数和new操作符,构造函数是所有对象的成员方法中,最早被调用的那个,下面一起来看一下吧,希望对大家有帮助。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于面向对象的相关问题,包括了属性描述符、数据描述符、存取描述符等等内容,下面一起来看一下,希望对大家有帮助。

方法:1、利用“点击元素对象.unbind("click");”方法,该方法可以移除被选元素的事件处理程序;2、利用“点击元素对象.off("click");”方法,该方法可以移除通过on()方法添加的事件处理程序。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于BOM操作的相关问题,包括了window对象的常见事件、JavaScript执行机制等等相关内容,下面一起来看一下,希望对大家有帮助。

foreach不是es6的方法。foreach是es3中一个遍历数组的方法,可以调用数组的每个元素,并将元素传给回调函数进行处理,语法“array.forEach(function(当前元素,索引,数组){...})”;该方法不处理空数组。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

SublimeText3 Linux新版
SublimeText3 Linux最新版

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

WebStorm Mac版
好用的JavaScript开发工具

SublimeText3 英文版
推荐:为Win版本,支持代码提示!