記憶盒子

把記憶裝進灰色的盒子,封裝起來,那年那月,重新拾起。

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

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

作者:Kaka    時間:2015-1-22 15:21:38    瀏覽:    評論:5

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

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

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

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

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

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

側(cè)欄始終浮動可見

側(cè)欄始終浮動可見

使用JS的實現(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)頁進行調(diào)整,解釋如下:

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

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

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

漂浮層和底部高度

漂浮層和底部高度

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>

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

您可能對如下文章也感興趣

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

x

標(biāo)簽: JavaScript  

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

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

發(fā)表評論:

◎歡迎參與討論,請在這里發(fā)表您的看法、交流您的觀點。

訂閱博客                   QQ交流群(312716741)

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

Search

最新評論及回復(fù)

最近留言

網(wǎng)站分類

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

Copyright @2009-2024 All Rights Reserved. 粵ICP備14028160號-1

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