記憶盒子

把記憶裝進(jìn)灰色的盒子,封裝起來(lái),那年那月,重新拾起。

首頁(yè)搜索目錄
search
當(dāng)前主題: 互聯(lián)網(wǎng)絡(luò)

網(wǎng)頁(yè)側(cè)欄浮動(dòng)固定但不遮住底部的js實(shí)現(xiàn)方法

作者:Kaka    時(shí)間:2015-1-22 15:21:38    瀏覽:    評(píng)論:5

網(wǎng)頁(yè)側(cè)欄固定的用途非常廣泛,可以是固定導(dǎo)航,可以是固定部分文章,可以是固定對(duì)話窗口,更為常見(jiàn)的是固定廣告層?,F(xiàn)在很多站長(zhǎng)都把側(cè)欄部分內(nèi)容給固定了,然而當(dāng)被固定內(nèi)容層太高時(shí),網(wǎng)頁(yè)滾到后面時(shí)可能會(huì)把底部的內(nèi)容遮住了,這十分影響用戶體驗(yàn)的。如下圖所示:

側(cè)欄把底部遮住了

側(cè)欄把底部遮住了

為了獲得更好的用戶體驗(yàn),需要解決這個(gè)問(wèn)題,使側(cè)欄始終位于底部之上,但又始終浮動(dòng)可見(jiàn)。效果圖如下:

側(cè)欄位于底部之上

側(cè)欄位于底部之上

側(cè)欄始終浮動(dòng)可見(jiàn)

側(cè)欄始終浮動(dòng)可見(jiàn)

使用JS的實(shí)現(xiàn)方法

1、在<head></head>里添加如下代碼

<!-- float div start-->  
<script type="text/javascript" src="/script/jquery-1.4.2.min.js"></script>
<style type ="text/css" >
    .fixed {  
        position:fixed;  
        top:0px;  
        width:300px;  
    }
    .fixed2 {  
        position:fixed;  
        top:-40px; 
        width:300px;  
    } 
</style>
<script type="text/javascript"> 
jQuery(document).ready(function() {  
    var a = $("#floatbox").offset();  
    $(window).scroll(function() {  
        var b = $(window).scrollTop();  
        if (b > a.top) {
           if((b + 600 + 200) < document.body.parentNode.scrollHeight) 
              $("#floatdiv").addClass("fixed");   
           else
              $("#floatdiv").addClass("fixed2");
        } else {  
            $("#floatdiv").removeClass("fixed"); 
            $("#floatdiv").removeClass("fixed2");
        }  
    });  
});  
</script>
<!-- float div end-->

上述代碼里的數(shù)字需要根據(jù)自己的網(wǎng)頁(yè)進(jìn)行調(diào)整,解釋如下:

<script type="text/javascript" src="/script/jquery-1.4.2.min.js"></script>
引用jquery.js,注意文件路徑

top:0px; 這個(gè)是漂浮層距離網(wǎng)頁(yè)頂部的位置
width:300px;  這個(gè)是漂浮層的寬度
top:-40px; 這個(gè)是漂浮層距離網(wǎng)頁(yè)頂部的位置

if((b + 600 + 200) < document.body.parentNode.scrollHeight)
600是漂浮層的高度,200是網(wǎng)頁(yè)底部的高度,如下圖所示:

漂浮層和底部高度

漂浮層和底部高度

2、固定層的代碼如下:

<div id="floatbox" >
          <div id="floatdiv">
          <ul>
            <li><a href="#" target="_blank">這里是需要固定的內(nèi)容</a></li>
            <li><a href="#" target="_blank">這里是需要固定的內(nèi)容</a></li>
            <li><a href="#" target="_blank">這里是需要固定的內(nèi)容</a></li>
            <li><a href="#" target="_blank">這里是需要固定的內(nèi)容</a></li>
          </ul>
          </div>
</div>

通過(guò)上述方法的設(shè)置,固定側(cè)欄但又不遮住底部的功能就實(shí)現(xiàn)了。

您可能對(duì)如下文章也感興趣

4種方法固定側(cè)欄內(nèi)容和廣告位 提高網(wǎng)站PV和點(diǎn)擊率

x

標(biāo)簽: JavaScript  

※ 網(wǎng)站速度慢?試試網(wǎng)站自動(dòng)優(yōu)化工具 ※

上一篇: 引用googleapis jquery和fonts文件會(huì)大大拖慢網(wǎng)頁(yè)速度
下一篇: webkaka網(wǎng)站速度診斷更新:新增視圖分析和支持網(wǎng)頁(yè)登錄等功能
  • 5.愛(ài)*
  • 我也用起的,但是每次到了文章多說(shuō)評(píng)論框哪里就走不下去了,不知道是怎么回事,其他頁(yè)面都還可以!
  • 2015/2/21 13:01:59 回復(fù)該留言
  • 4.楊**
  • 偶然過(guò)來(lái)的,這里好多技術(shù)。搜藏了。很久沒(méi)弄博客了
  • 2015/1/31 23:23:15 回復(fù)該留言

發(fā)表評(píng)論:

◎歡迎參與討論,請(qǐng)?jiān)谶@里發(fā)表您的看法、交流您的觀點(diǎn)。

訂閱博客                   QQ交流群(312716741)

  • 通過(guò)Google訂閱本站 通過(guò)鮮果訂閱本站 通過(guò)抓蝦訂閱本站
  • 通過(guò)QQ郵箱訂閱本站 通過(guò)Yahoo訂閱本站 通過(guò)有道訂閱本站

Search

最新評(píng)論及回復(fù)

最近留言

網(wǎng)站分類

Powered By Z-Blog 1.8 Walle Build 91204 Designed by Han'space

Copyright @2009-2024 All Rights Reserved. 粵ICP備14028160號(hào)-1

Powered By Z-Blog 1.8 Walle Build 91204
Copyright @2009-2024 All Rights Reserved.