JS实现自动固定顶部的悬浮菜单栏效果

时间:2021-05-26

本文实例讲述了JS实现自动固定顶部的悬浮菜单栏效果。分享给大家供大家参考。具体如下:

这是一款自动固定顶部的悬浮菜单栏代码,不管你如何拉动滚动条,它会始终显示在网页的最顶部,用作网站的顶级导航或公告之类的比较合适吧。

运行效果截图如下:

在线演示地址如下:

http://demo.jb51.net/js/2015/js-fix-top-float-menu-style-codes/

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>自动固定顶部的悬浮菜单栏代码</title><meta http-equiv="content-type" content="text/html;charset=gb2312"><style type="text/css">*{margin:0;padding:0;}ul,li{list-style:none;}#content{width:600px;margin:0 auto;border:1px solid #f00;}ul li.item{width:400px;text-align:center;margin:20px 100px;background:#00f;color:#fff;font-size:14px;font-weight:bold;height:100px;line-height:100px;}#float_banner{position:absolute;top:0;left:50%;width:900px;margin-left:-450px;height:30px;line-height:30px;text-align:center;background:#000;color:#fff;font-size:14px;font-weight:bold;z-index:2;}</style></head><body><div id="float_banner">这里是顶部的横幅,随着页面滚动而浮动</div> <ul id="content"> <li class="item">第一块内容</li> <li class="item">第二块内容</li> <li class="item">第三块内容</li> <li class="item">第四块内容</li> <li class="item">第五块内容</li> <li class="item">第六块内容</li> <li class="item">第七块内容</li> <li class="item">第八块内容</li> <li class="item">第九块内容</li> <li class="item">第十块内容</li></ul><script language="javascript">var speed = 100;var scrollTop = null;var hold = 0;var float_banner;var pos = null;var timer = null;var moveHeight = null;float_banner = document.getElementById("float_banner");window.onscroll=scroll_ad;function scroll_ad(){ scrollTop = document.documentElement.scrollTop+document.body.scrollTop; pos = scrollTop - float_banner.offsetTop; pos = pos/10 moveHeight = pos>0?Math.ceil(pos):Math.floor(pos); if(moveHeight!=0){ float_banner.style.top = float_banner.offsetTop+moveHeight+"px"; setTimeout(scroll_ad,speed); }//alert(scrollTop);}</script></body></html>

希望本文所述对大家的JavaScript程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章