jquery实现当滑动到一定位置时固定效果

例子说明:当滑动页面致使滚动条距离顶部大于等于整个页面的百分之二十的时候固定菜单栏,且菜单栏距离整个页面的顶部为大标题的高度

1.绘制页面

<body style="margin: 0px;font-size: 36px;">
    <div id="mtitle" style="text-align: center;background-color: #B84911">这是大标题</div>
    <div id="menu" style="height:50px;width:100%;border:1px  solid blue;">这是菜单栏</div>
    <div style="height: 2000px;background-color: red;text-align: center;">其他的内容</div>
  </body>

2.实现固定效果

 <script type="text/javascript">
     var allHeight=document.body.scrollHeight;  //获取整个页面的高度 
     var fixHeight=allHeight*0.2;   //获取整个页面高度的百分之二十
	    
     /* 获取大标题的高度,有三种获取方式,但值是不一样的,可根据自己的需求使用 */
     //获得的是该div本身的高度, (不包含padding,margin,border)
     var mtitleHeight1=$("#mtitle").height(); 
     //包含该div本身的高度, padding上下的高度, 以及border上下的高度(不包含margin的高度)
     var mtitleHeight2=$("#mtitle").outerHeight(); 
     //包含该div本身的高度, 以及padding,border,margin上下的总高度 
     var mtitleHeight=$("#mtitle").outerHeight(true); 
	 /*滚动事件 */
	 $(window).scroll(function() { 
	     if($(window).scrollTop()>=fixHeight){ //滚动条距离顶部大于某高度(整个页面的百分之二十)
	          $("#menu").css("position","fixed"); //设置菜单栏的固定属性
	          $("#menu").css("top",mtitleHeight); //设置菜单栏距离顶部的距离
	      }else{
	          $("#menu").css("position",""); //清空菜单栏的固定属性
	      }
           });
    </script>

 

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值