jQuery实现滑动页面固定顶部显示(可根据显示位置消失与替换)
作者:企鹅
这篇文章主要介绍了jQuery实现滑动页面固定顶部显示,还可根据显示位置消失与替换对应的当前显示项,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了jQuery实现滑动页面固定顶部显示(可根据显示位置消失与替换)。分享给大家供大家参考,具体如下:
这里介绍的jQuery拉动页面固定顶部显示,及自动消失效果,可能ie浏览器下有问题,不过火狐什么的都可以运行看效果,一个简单的网页特效,也是很常用的“回到顶部”效果,有兴趣的看一下。
运行效果截图如下:
在线演示地址如下:
http://demo.jb51.net/js/2015/jquery-fix-top-cha-show-codes/
具体代码如下:
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>回到顶部:哭泣的小丑</title> <script src="jquery-1.6.2.min.js"></script> <!-- CSS模板清除 --> <style> html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend, input,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed,figure, figcaption, footer, header, hgroup,menu, nav, output, ruby, section, summary,time, mark, audio, video {margin: 0;padding: 0;border: 0;font-size: 100%;} article, aside, details, figcaption, figure,footer, header, hgroup, menu, nav, section {display: block;float:left;}select, input, button,button img, label {vertical-align: middle;}body {font:normal 12px/1.5 "Microsoft Yahei","微软雅黑",Tahoma,Arial,Helvetica,STHeiti; webkit-font-smoothing:antialiased;-moz-font-smoothing: subpixel-antialiased; color:#666;}ol, ul {list-style: none;}blockquote, q {quotes: none;}blockquote:before, blockquote:after,q:before, q:after {content: '';content: none;}table {border-collapse: collapse;border-spacing: 0;}em {font-style: normal}select, input, button, button img, label {vertical-align:middle;}input {font-family:"Microsoft Yahei","微软雅黑";webkit-font-smoothing:antialiased;-moz-font-smoothing: subpixel-antialiased}input, input:focus, button, button:focus, select,textarea, textarea:focus {outline:none; -moz-outline:none; -webkit-outline:none; }input:focus { outline:none; -moz-outline:none; -webkit-outline:none; }textarea {resize:none;}a {color:#666; text-decoration:none;} a:hover {text-decoration:underline;}a:focus {outline:none; -moz-outline:none;-webkit-outline:none;}body {min-width: 960px;} </style> <!-- CSS模板清除 E--> <!-- main CSS --> <style> body{background:#e7e7e7;} .clearfix:before, .clearfix:after, .container_24:before, .container_24:after { content: '.'; display: block; overflow: hidden; visibility: hidden; font-size: 0; line-height: 0; width: 0; height: 0;} .clearfix:after, .container_24:after { clear: both; } .Xc_main{width:750px;margin:0 auto;position:relative;} .Xc_left{float:left;} .Xc_left h1{font-size:24px;padding-top:25px;} .Xc_right{float:right;width:600px;} .Xc_right .Xc_list{margin:10px 0 10px 0;} .Xc_list_top,.Xc_list_main{background:#fff;padding:10px;border:1px solid #ccc;} .Xc_list_top{margin-bottom:10px;} .Xc_gg{width:90px;height:90px;border:1px solid #ccc;background:#fff;text-align:center;} .Xc_bottom{height:650px;background:#fff;padding:10px;border:1px solid #ccc;position:relative;} </style> <!-- main CSS E--> </head> <script> $(function () { $(".Xc_list_top").css("width",$(".Xc_list_main").width()); var resetRightPanelPostion = function () { var msie6 = $.browser.msie && $.browser.version == '6.0' && $.browser.version < 7; if ($.browser.safari) { bodyelem = $("body"); } else { bodyelem = $("html,body"); } var bodyTop = bodyelem.scrollTop(); var top = $(".Xc_left").offset().top; //var t = $("#public_footer").offset().top; var t = $("#footerDestinationBox").offset().top; //var bottom = $("#footerDestinationBox").offset().top; for(var i = 0 ; i < $(".Xc_list .Xc_list_top").length ; i++){ if (bodyTop >= top && ((bodyTop + $(".Xc_left").outerHeight()) < t)) { if (!msie6) { if (bodyTop + $(".Xc_gg").outerHeight() >= t) { $(".Xc_gg").removeClass('fixed').css({ "position": "absolute", "top": t - $(".Xc_gg").outerHeight() + "px" }); } else { $(".Xc_gg").css({ "position": "fixed", "top": 0 }); } } } else { if (!msie6) { $(".Xc_gg").css({ "position": "static" }); } } if(bodyTop>$(".Xc_list").eq(i).offset().top){ $(".Xc_list_top").eq(i).css({position:"absolute",top:top-168}); } if(bodyTop>$(".Xc_list").eq(i).offset().top){ $(".Xc_list_top").eq(i).css({position:"fixed",top:0}); } if(bodyTop<=$(".Xc_list").eq(i).offset().top){ $(".Xc_list_top").eq(i).css({position:"static",top:0}); } } }; window.onload = function () { if ($(".Xc_gg").length) { resetRightPanelPostion(); $(window).scroll(function () { resetRightPanelPostion(); }); } } }) </script> <body> <div class="Xc_main clearfix"> <div class="clearfix" style="margin-top:90px;float:left;"> <div class="Xc_left"> <div class="Xc_gg"> <h1>小丑</h1> <div style="margin-top:40px;">Q群:<em style="color:#0069D6;">150508281</em></div> </div> </div> </div> <div class="Xc_right clearfix"> <div class="Xc_list"> <div class="Xc_list_top" id="Xc_list_top">top 1</div> <div class="Xc_list_main" style="height:300px;background:#fff;"> </div> </div> <div class="Xc_list"> <div class="Xc_list_top">top 2</div> <div class="Xc_list_main" style="height:300px;background:#fff;"> </div> </div> <div class="Xc_list"> <div class="Xc_list_top">top 3</div> <div class="Xc_list_main" style="height:300px;background:#fff;"> </div> </div> <div class="Xc_list"> <div class="Xc_list_top">top 4</div> <div class="Xc_list_main" style="height:300px;background:#fff;"> </div> </div> <div class="Xc_list"> <div class="Xc_list_top">top 5</div> <div class="Xc_list_main" style="height:300px;background:#fff;"> </div> </div> <div class="Xc_list"> <div class="Xc_list_top">top 6</div> <div class="Xc_list_main" style="height:300px;background:#fff;"> </div> </div> </div> </div> <div class="Xc_bottom clearfix" id="footerDestinationBox"> <div style="position:absolute;top:40px;right:50px;"> by 蓝色理想 @哭泣的小丑</div> </div> </body> </html>
希望本文所述对大家jQuery程序设计有所帮助。