zoukankan      html  css  js  c++  java
  • javascript改变position值实现菜单滚动至顶部后固定

    转载:http://www.jb51.net/article/33381.htm

      现在很多网站都有这样的一个效果,当页面滚动到一定高度时,菜单栏会固定在页面顶部;该效果在 ie6 下不支持,因为ie6不支持 position:fixed,效果很不错,感兴趣的朋友可以了解下啊

    现在很多网站都有这样的一个效果,当页面滚动到一定高度时,菜单栏会固定在页面顶部。其实就是改变 position 的值。 
    html 代码: 

    复制代码代码如下:

    <!DOCTYPE HTML> 
    <html lang="en-US"> 
    <head> 
    <meta charset="UTF-8"> 
    <title></title> 
    <link rel="stylesheet" type="text/css" href="css/base.css" media="all"/> 
    <style type="text/css"> 
    .wrapper{1000px;height:2000px;margin-left:auto;margin-right:auto;} 
    .header{height:150px;} 
    #nav{padding:10px;position:relative;top:0;background:black;1000px;} 
    a{display:inline-block;margin:0 10px;*display:inline;zoom:1;color:white;} 
    </style> 
    </head> 
    <body> 
    <div class="wrapper"> 
    <div class="header"></div> 
    <div id="nav"> 
    <a href="#">11111</a> 
    <a href="#">22222</a> 
    <a href="#">33333</a> 
    <a href="#">44444</a> 
    <a href="#">55555</a> 
    </div> 
    </div> 
    </body> 
    </html> 
    <script type="text/javascript" src="menuFixed.js"></script> 
    <script type="text/javascript"> 
    window.onload = function(){ 
    menuFixed('nav'); 

    </script> 


    menuFixed.js 代码: 

    复制代码代码如下:

    function menuFixed(id){ 
    var obj = document.getElementById(id); 
    var _getHeight = obj.offsetTop; 
    window.onscroll = function(){ 
    changePos(id,_getHeight); 


    function changePos(id,height){ 
    var obj = document.getElementById(id); 
    var scrollTop = document.documentElement.scrollTop || document.body.scrollTop; 
    if(scrollTop < height){ 
    obj.style.position = 'relative'; 
    }else{ 
    obj.style.position = 'fixed'; 


    最后需要说明的是,该效果在 ie6 下不支持,因为 ie6 不支持 position:fixed; 
    PS:这是本人闲着无聊,通过自己所学的 javascript 知识,随意写的一些效果。

  • 相关阅读:
    using vb.net export a datatable to Excel and save as file
    selection sort with objective c
    stdin和STDIN_FILENO的区别
    stdin和STDIN_FILENO的区别
    linux系统kbhit的几种实现
    成为掌握企业聘用趋势的人才
    linux系统kbhit的几种实现
    c_lflag中ICANON的作用
    常量字符串的问题
    mmsbitfields gcc和vc关于位域那点事
  • 原文地址:https://www.cnblogs.com/milude0161/p/5163384.html
Copyright © 2011-2022 走看看