知识点
1.scroll家族和offset家族的结合运用
2.当nav的offsetTop大于屏幕卷去高度的时候,进行吸顶
3.添加一个固定类,如果满足条件,为nav加类名
运行效果
滚动页面时,保证导航栏吸顶
代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
<!DOCTYPE html> < html lang = "en" > < head > < meta charset = "UTF-8" > < title ></ title > < style > *{margin: 0;padding: 0;list-style: none;border:none} img{vertical-align: top;width: 100%;} section{width: 70%;margin: 0 auto;} .nav{position: fixed;left: 0;top: 0;width: 100%} </ style > </ head > < body > < header id = "head" > < img src = "images/top.png" alt = "" > </ header > < nav id = "nav" > < img src = "images/nav.png" alt = "" > </ nav > < section > < img src = "images/body01.png" alt = "" > < img src = "images/body02.png" alt = "" > </ section > < script src = "../../MyTools/MyTools.js" ></ script > < script > window.addEventListener('load',function (ev) { // 1. 求出头部高度 var navTopHeight = myTool.$('nav').offsetTop; // 2. 监听页面滚动 window.addEventListener('scroll',function (ev1) { var scrollTopHeight = myTool.scroll().top; // 2.1 判断 if(scrollTopHeight >= navTopHeight){ myTool.addClassName(myTool.$('nav'),'nav') }else{ myTool.removeClassName(myTool.$('nav'),'nav'); } }) }) </ script > </ body > </ html > |