首頁 web前端 js教程 jQuery固定浮動側邊欄實現思路及代碼_jquery

jQuery固定浮動側邊欄實現思路及代碼_jquery

May 16, 2016 pm 04:34 PM
側邊欄

這個功能現在應用的非常普遍,如果頁面比較高,當滾動條拖到頁面的下面的時候,側邊欄會出現一個固定跟隨瀏覽器的DIV框,現思路是這樣的:首先獲取需要跟隨的DIV距離頁面頂部的距離,然後判斷,當瀏覽器滾動的距離大於該DIV本身距離頂部距離的時候,則添加CSS屬性fixed即可。

程式碼如下

HTML程式碼:

<div id="header">header</div>
<div id="sidebarWrap">
<div id="sidebar">Sidebar</div>
</div>
<div id="main">Main</div>
<div id="footer">footer</div>
登入後複製

CSS代碼:

body {
margin: 10px auto;
font-family: sans-serif;
width: 500px;
}
div {
border-radius: 5px;
box-shadow: 1px 2px 5px rgba(0,0,0,0.3);
border: 1px solid #ccc;
padding: 5px;
}
#sidebarWrap {
height: 400px;
width: 210px;
float: right;
position: relative;
box-shadow: none;
border: none;
margin: 0;
padding: 0;
}
#main {
width: 270px;
height: 4000px;
}
#footer {
clear: both;
margin: 10px 0;
}
#sidebar {
width: 200px;
height: 300px;
position: absolute;
}
#header {
height: 200px;
margin-bottom: 10px;
}
#sidebar.fixed {
position: fixed;
top: 0;
}
#footer { height: 600px; }
#footer { height: 600px; }
登入後複製

JavaScript程式碼:

$(function() {
var top = $('#sidebar').offset().top - parseFloat($('#sidebar').css('marginTop').replace(/auto/, 0));
var footTop = $('#footer').offset().top - parseFloat($('#footer').css('marginTop').replace(/auto/, 0));

var maxY = footTop - $('#sidebar').outerHeight();

$(window).scroll(function(evt) {
var y = $(this).scrollTop();
if (y > top) {
if (y < maxY) {
$('#sidebar').addClass('fixed').removeAttr('style');
} else {
$('#sidebar').removeClass('fixed').css({
position: 'absolute',
top: (maxY - top) + 'px'
});
}
} else {
$('#sidebar').removeClass('fixed');
}
});
});
登入後複製
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

紅米13c怎麼開側邊欄? 紅米13c怎麼開側邊欄? Mar 19, 2024 am 11:19 AM

在紅米13c這款智慧型手機上,開啟側邊欄功能可以提供使用者更便利的操作體驗。透過側邊欄,使用者可以快速存取常用的應用程式、工具和設定選項,無需進入主畫面或選單介面。以下將介紹如何在紅米13c上開啟側邊欄功能,讓您輕鬆享受更有效率的手機使用體驗。紅米13c怎麼開側邊欄? 1.開啟手機設置,從設定選單中找到特色功能。 2、在特色功能頁面找到全域側邊欄。 3.打開全域側邊欄即可。透過上述的簡單步驟,您已經成功開啟了紅米13c手機的側邊欄功能。無論是查看日曆、開啟瀏覽器、調整亮度,或是快速切換到最近使用的應用,側

如何使用Vue實現側邊欄特效 如何使用Vue實現側邊欄特效 Sep 19, 2023 pm 02:00 PM

如何使用Vue實現側邊欄特效Vue是一款流行的JavaScript框架,它的簡單易用和靈活性使開發人員能夠快速建立互動性強的單頁應用程式。在這篇文章中,我們將學習如何使用Vue來實現一個常見的側邊欄特效,同時提供具體的程式碼範例幫助我們更好地理解。建立Vue專案首先,我們需要建立一個Vue專案。可以使用Vue提供的VueCLI(命令列介面),它能夠快速生成

Microsoft Edge 測試了一項新功能,以整理其在 Windows 11 上的體驗 Microsoft Edge 測試了一項新功能,以整理其在 Windows 11 上的體驗 Nov 07, 2023 pm 11:13 PM

Windows11上有FluentDesign選單的MicrosoftEdgeMicrosoft正在新增一項新功能…整理Edge有爭議的功能之一-側邊欄,它可以停靠在Windows11和Windows10的右側。 MicrosoftEdgeCanary正在測試一項新功能或彈出窗口,該功能或彈出視窗會自動偵測側邊欄中未使用的項目。 Microsoft2022年11月將側邊欄加入Edge,並承諾此功能可提高您在Windows10上的工作效率,尤其是Copilot不附帶的Wind

CSS實現側邊欄選單特效的技巧與方法 CSS實現側邊欄選單特效的技巧與方法 Oct 24, 2023 am 10:33 AM

CSS實現側邊欄選單特效的技巧和方法近年來,隨著網頁設計的發展,側邊欄選單成為了許多網頁中常見的元素之一。無論是用於導航功能或展示內容,都能帶給使用者方便且更好的使用體驗。本文將介紹一些常見的CSS技巧和方法,幫助你實現一個漂亮且具有特效的側邊欄選單。一、基本佈局和樣式設定首先,我們需要設定側邊欄選單的基本佈局和樣式。可以使用一個div元素來表示整個側邊欄

如何使用HTML和CSS設計一個現代的側邊欄選單? 如何使用HTML和CSS設計一個現代的側邊欄選單? Aug 31, 2023 pm 09:53 PM

當你考慮一個典型網站的佈局時,很可能會在主要內容區域的右側或左側包含一列重要的連結(用於網頁中各個部分的導航連結)。這個元件被稱為“側邊欄”,通常用作網頁上的選單。雖然它被廣泛使用,但開發人員通常將此元素添加到網站上,用於在頁面之間導航,甚至導航到網頁的不同部分。讓我們了解這個功能,並嘗試只使用HTML和CSS來建立一個現代的側邊欄。什麼是側邊欄選單?側邊欄是位於主要內容區域右側或左側的靜態列。此元件包含網站中的導覽連結、小工具或其他必要的連結(用於主頁、內容或其他部分)。下面給出一個範例,演示

Vue開發中如何解決行動端側邊欄手勢滑動問題 Vue開發中如何解決行動端側邊欄手勢滑動問題 Jul 02, 2023 am 09:40 AM

Vue是一款流行的JavaScript框架,能夠快速開發現代化的Web應用程式。它具有許多強大的功能,但在行動裝置開發中,有一個常見的問題是如何解決側邊欄手勢滑動的問題。行動端應用程式通常會使用側邊欄來提供導覽和其他功能。使用者可以透過手勢滑動來開啟或關閉側邊欄。然而,由於行動裝置自帶的滾動行為,當使用者在側邊欄上進行滑動操作時,頁面往往會出現滾動的情況,而不是實現側

360瀏覽器的側邊欄如何隱藏 360瀏覽器的側邊欄如何隱藏 Jan 31, 2024 am 10:36 AM

360瀏覽器的側邊欄如何隱藏?360瀏覽器側邊欄看著有點累贅,要如何隱藏起來,下面介紹詳細方法! 360瀏覽器有個側邊欄功能,裡面會放一些收藏夾、郵件、微博、等功能,但是有些用戶覺得這個側邊欄放在網頁介面看起來很不清爽,影響瀏覽器體驗想要隱藏起來,怎麼操作呢?小編下面整理360瀏覽器的側邊欄如何隱藏方法步驟,不會的話,跟著我往下看吧! 360瀏覽器的側邊欄如何隱藏1、開啟360安全瀏覽器,點選。 2、點擊。 3.勾選,這樣就

CSS網頁版面技巧:實現分欄和側邊欄的最佳實踐 CSS網頁版面技巧:實現分欄和側邊欄的最佳實踐 Oct 24, 2023 am 08:01 AM

CSS網頁版面技巧:實現分欄和側邊欄的最佳實踐在開發網頁時,一個常見的需求是實現分欄和側邊欄的佈局。這種佈局可以將頁面內容劃分為主要內容區域和側邊欄區域,使網頁結構更清晰,提高使用者體驗。在本文中,我們將介紹一些實現分欄和側邊欄佈局的最佳實踐,並提供具體的程式碼範例。一、使用CSSGrid佈局CSSGrid佈局是一種強大且靈活的佈局工具,可輕鬆實現分欄和側邊

See all articles