zoukankan      html  css  js  c++  java
  • 当导航在显示范围外浮动在窗口顶部随窗口变化位置发生变化

    刚做的一导航,写出来方便以后阅读学习,参考资料http://www.cnblogs.com/hooray/archive/2011/09/21/2184563.html只是在他的基础上做些优化,达到自己想要的效果..

    <script type="text/javascript">
    $(function(){
    //导航距离屏幕顶部距离
    var _defautlTop = $("#nav").offset().top;

    //获取左边的距离,用当前窗口的距离减去导航的宽再除以二
    function leftWidth(){
    var num=$('#nav').width();//ie6受用
    var winWidth=$(window).width();
    var left=(winWidth-num)/2;
    return left;
    }

    //导航默认样式记录,还原初始样式时候需要
    var _position = $("#nav").css('position');
    var _top = $("#nav").css('top');
    var _left = $("#nav").css('left');
    var _zIndex = $("#nav").css('z-index');

    //当文档窗口改变大小时触发
    $(window).resize(function(){
    if($.browser.msie && $.browser.version=="6.0"){ //防止ie6bug <在小窗口变大时,距离头部的位置错位>
    $("#nav").css({'top':eval(document.documentElement.scrollTop),'left':leftWidth()});
    }else{
    $("#nav").css({'left':leftWidth()});
    }
    });
    //鼠标滚动事件
    $(window).scroll(function(){
    if($(this).scrollTop() > _defautlTop){
    //var _defautlLeft = $("#nav").offset().left;导航距离屏幕左侧距离
    //IE6不认识position:fixed,单独用position:absolute模拟

    if($.browser.msie && $.browser.version=="6.0"){
    $("#nav").css({'position':'absolute','top':eval(document.documentElement.scrollTop),'left':leftWidth(),'z-index':99999});
    //防止出现抖动
    $("html,body").css({'background-image':'url(images/bg.jpg)','background-attachment':'fixed'});
    }else{
    $("#nav").css({'position':'fixed','top':0,'left':leftWidth(),'z-index':99999});
    }
    }else{
    $("#nav").css({'position':_position,'top':_top,'left':_left,'z-index':_zIndex});
    }
    });})

    </script>

  • 相关阅读:
    ParallelStreamAPI
    VS Code 安装后的一些配置项
    RSA算法在Python Django中的简单应用
    DLL重定向处理
    Oracle和MySQL差异总结
    Oracle中Table函数简单应用实例
    数据库开发规范
    CentOS7安装开发工具套件时报错解决方案
    安装beanstalkd队列问题——No package beanstalkd available
    CentOS7配置yum源
  • 原文地址:https://www.cnblogs.com/ihqn19/p/2258539.html
Copyright © 2011-2022 走看看