Heim Web-Frontend js-Tutorial 博客侧边栏模块跟随滚动条滑动固定效果的实现方法(js+jquery等)_javascript技巧

博客侧边栏模块跟随滚动条滑动固定效果的实现方法(js+jquery等)_javascript技巧

May 16, 2016 pm 05:39 PM
滚动条

当一个页面内容很长的时候,侧边栏栏目可能显得太短,当窗口滑动到靠下的位置,则侧边即失去了展示内容的机会。很多新闻资讯类网站如新浪、网易、CSDN等,会在边栏的右下角以固定的小弹窗形式,以提供更多的内容展示方式,但这并不适合博客和web2.0风格的网站。

现在很多的独立博客和网站如人人网等,都使用了让侧边栏模块随滚动条滑动而位置固定的效果。就是当一个页面很长的时候,设定侧栏内容会跟随滚动条,这种效果适用于评论较多、内容较长的网站。志文工作室调研了几种类似功能的实现方法,摘录之以供参考。

参考一、提高浏览量的特效:侧栏跟随滚动条

来源:卢松松博客
http://lusongsong.com/reed/453.html

代码如下:

CSS部分:

复制代码 代码如下:

/*侧栏跟随*/  
#box{float:left; position:relative;width:250px;}
.div1{width:250px;}
.div2{position:fixed;_position:absolute;top:0;z-index:250;}

注:每个网站的侧栏宽度不同,可根据你网页的宽度调整div1的宽度,我的是width:250px;,把这段代码添加到你的CSS文件中即可。

JS部分:

JavaScript代码

复制代码 代码如下:

//侧栏跟随   
(function(){   
    var oDiv=document.getElementById("float");   
    var H=0,iE6;   
    var Y=oDiv;   
    while(Y){H+=Y.offsetTop;Y=Y.offsetParent};   
    iE6=window.ActiveXObject&&!window.XMLHttpRequest;   
    if(!iE6){   
        window.onscroll=function()   
        {   
            var s=document.body.scrollTop||document.documentElement.scrollTop;   
            if(s>H){oDiv.className="div1 div2";if(iE6){oDiv.style.top=(s-H)+"px";}}   
            else{oDiv.className="div1";}       
        };   
    }   
})();  

注:这段代码可放入任意JS文件中,比如我放在了util.js 文件里。

网页代码部分:

复制代码 代码如下:

  
    
这里写你网站的代码与标签   
  
  

注:这里可以放文章列表、联盟广告,总之是个提高点击率的好方法。Z-blog用户把此段代码添加到single.html的侧栏位置即可。

特别提示:此代码试用与任何CMS系统,但该特效在IE6下无法实现,其余浏览器均没问题,同时侧栏其余部分应使用静态文件调用,使用JS调用栏目会出现代码重叠现象,调用联盟广告没问题。

参考二、添加侧边栏随滚动条滚动效果(示例)

来源:自由的风博客(http://loosky.net/?p=2028)

步骤如下:

1、给侧边栏的各个模块加上一些class标志
如果你的侧边栏之前已经有了这些class标志加以区分,只要使用就可以了,不用另外加。添加ID也可以实现效果,但w3c标准不允许同一页面出现多个同样的ID,所以最好用class样式方式。

2、在网站页面中的任意js文件中加上如下代码:

JavaScript代码

复制代码 代码如下:

var rollStart = $('.Statistics'), //滚动到此区块的时候开始随动   
rollOut = $('.WidgetMeta,.Statistics'); //隐藏rollStart之后的区块   
rollSet = $('.RRPosts,.TagsCloud'); //添加rollStart之前的随动区块   

rollStart.before('
');   
var offset = rollStart.offset(),objWindow = $(window),rollBox = rollStart.prev();   
objWindow.scroll(function() {   
if (objWindow.scrollTop() > offset.top){   
if(rollBox.html(null)){   
rollSet.clone().prependTo('.rollbox');   
}   
rollOut.fadeOut();   
rollBox.show().stop().animate({top:0,paddingTop:10},400);   
} else {   
rollOut.fadeIn();   
rollBox.hide().stop().animate({top:0},400);   
}   
});  

注:滚动区域的内容不能太长,不然会出现无限下拉的情况。

参考三、JQUERY SCROLL FOLLOW

这是一个插件,添加步骤也很简单,下载压缩包解压到网站目录,然后按照步骤操作即可。
详细可参考:
http://kitchen.net-perspective.com/open-source/scroll-follow/

示例页面:
http://kitchen.net-perspective.com/sf-example-1.html
http://kitchen.net-perspective.com/sf-example-2.html
http://kitchen.net-perspective.com/sf-example-3.html
http://kitchen.net-perspective.com/sf-example-4.html

侧栏模块随窗口滑动(示例页面)
来源:http://www.mb-wx.com/common/msay.js
这段代码来自木本无心的博客(pjblog),原理很简单,就是当窗口到达指定模块位置后,开始判断其距离顶端的距离并进行调整。该段代码结合应用在了志文工作室博客侧边栏。

JavaScript代码

复制代码 代码如下:

//侧栏模块随窗口滑动   
jQuery(document).ready(function($) {   
 $(function() {   
  var $sidebar = $("#Side_relativelog"),   
  $window = $(window),   
  offset = $sidebar.offset(),   
  topPadding = 0;   
  $window.scroll(function() {   
   if ($window.scrollTop() > offset.top) {   
    $sidebar.stop().animate({   
     marginTop: $window.scrollTop() - offset.top + topPadding   
    });   
   } else {   
    $sidebar.stop().animate({   
     marginTop: 0   
    });   
   }   
  });   
 });   
}); 
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Microsoft bringt die Fluent-Bildlaufleisten von Windows 11 in Google Chrome Microsoft bringt die Fluent-Bildlaufleisten von Windows 11 in Google Chrome Apr 14, 2023 am 10:52 AM

Im Gegensatz zu Windows 10 verfügt Windows 11 über neue moderne „flüssige Bildlaufleisten“, deren Form sich ändert, wenn Benutzer mit ihnen interagieren. Fluent-Bildlaufleisten sind dynamischer Natur, sie skalieren automatisch in verschiedenen Formfaktoren oder wenn Sie die Fenstergröße ändern, und sie werden derzeit in Apps wie Einstellungen, Media Player und mehr verwendet. Laut einem neuen Vorschlag von Microsoft könnte Google Chrome bald über eine reibungslose Bildlaufleistenfunktion verfügen. Microsoft sagt in einem Vorschlag, dass sie alte Bildlaufleisten in Chrome modernisieren wollen

So verbergen Sie das Scrollen der Bildlaufleiste in React So verbergen Sie das Scrollen der Bildlaufleiste in React Dec 21, 2022 pm 03:38 PM

So blenden Sie das Scrollen der Bildlaufleiste in React aus: 1. Öffnen Sie die entsprechende „react-native“-Datei. 2. Stellen Sie das horizontale Scrollen durch horizontal ein.

So stellen Sie die Bildlaufleiste so ein, dass sie auf einem Mac-System immer angezeigt wird - So stellen Sie die Bildlaufleiste so ein, dass sie immer angezeigt wird So stellen Sie die Bildlaufleiste so ein, dass sie auf einem Mac-System immer angezeigt wird - So stellen Sie die Bildlaufleiste so ein, dass sie immer angezeigt wird Mar 18, 2024 pm 06:22 PM

Kürzlich haben einige Freunde den Editor gefragt, wie man die Bildlaufleiste des Mac-Systems so einstellt, dass sie immer angezeigt wird. Im Folgenden erfahren Sie, wie Sie die Bildlaufleiste des Mac-Systems so einstellen, dass sie immer angezeigt wird mehr. Schritt 1: Wählen Sie im Systemstartmenü die Option [Systemeinstellungen]. Schritt 3: Wählen Sie auf der Seite „Systemeinstellungen“ die Option [Allgemein]. Schritt 3: Wählen Sie auf der allgemeinen Seite [Immer] aus, um Bildlaufleisten anzuzeigen.

So codieren Sie ein HTML-Bildlaufleisten-Textfeld So codieren Sie ein HTML-Bildlaufleisten-Textfeld Feb 19, 2024 pm 07:38 PM

Titel: So schreiben Sie HTML-Textfeldcode mit Bildlaufleisten. Das Textfeld in HTML ist eines der am häufigsten verwendeten Steuerelemente für Benutzereingaben. In einigen Fällen wird das Textfeld unvollständig angezeigt. Zu diesem Zeitpunkt können wir dem Textfeld eine Bildlaufleiste hinzufügen, um das Scrollen zu unterstützen. In diesem Artikel wird detailliert beschrieben, wie man HTML-Textfeldcode mit Bildlaufleisteneffekt schreibt, und es werden konkrete Codebeispiele gegeben. 1. Verwenden Sie das Textarea-Element, um ein Textfeld zu erstellen. In HTML verwenden wir das Textarea-Element, um ein Textfeld zu erstellen.

So erstellen Sie eine HTML-Bildlaufleiste So erstellen Sie eine HTML-Bildlaufleiste Feb 22, 2024 pm 03:24 PM

Für die Erstellung einer HTML-Bildlaufleiste sind bestimmte Codebeispiele erforderlich. Im Webdesign ist die Bildlaufleiste ein häufiges Element, das das einfache Scrollen der Webseite ermöglicht, wenn zu viel Inhalt vorhanden ist. In diesem Artikel wird erläutert, wie Sie Bildlaufleisten mithilfe von HTML erstellen, und es werden spezifische Codebeispiele bereitgestellt. Zunächst müssen wir die Grundprinzipien der Erstellung von Bildlaufleisten in HTML verstehen. CSS-Stile können in HTML verwendet werden, um das Aussehen und Verhalten von Bildlaufleisten zu steuern. Insbesondere können wir CSS-Eigenschaften verwenden, um die Bildlaufleiste festzulegen. Zu den häufig verwendeten Eigenschaften gehören o

Wie aktiviere oder deaktiviere ich Bildlaufleisten, die in Windows 11 immer angezeigt werden? Wie aktiviere oder deaktiviere ich Bildlaufleisten, die in Windows 11 immer angezeigt werden? Apr 24, 2023 pm 05:58 PM

Mit dem Windows-Betriebssystem können Benutzer festlegen, ob Bildlaufleisten automatisch ausgeblendet werden sollen, wenn sie inaktiv sind oder nicht verwendet werden. Windows hingegen aktiviert standardmäßig Bildlaufleisten. Wenn ein Benutzer diese Funktion auf seinem System aktivieren oder deaktivieren möchte, lesen Sie bitte diesen Artikel, um zu erfahren, wie das geht. So aktivieren oder deaktivieren Sie immer aktivierte Bildlaufleisten in Windows 11 1. Durch Drücken und Halten der Windows+U-Tasten wird die Seite „Eingabehilfen“ auf Ihrem System geöffnet. 2. Wählen Sie den visuellen Effekt aus, indem Sie darauf klicken. Er befindet sich oben auf der Seite „Barrierefreiheit“. 3. Wenn Sie die Funktion „Bildlaufleisten immer anzeigen“ auf Ihrem System aktivieren möchten, klicken Sie auf die Umschaltfläche „Bildlaufleisten immer anzeigen“, um sie wie unten gezeigt zu aktivieren. 4. Du kannst immer zeigen

So stellen Sie fest, dass die Bildlaufleiste in CSS keine Höhe einnimmt So stellen Sie fest, dass die Bildlaufleiste in CSS keine Höhe einnimmt Feb 01, 2023 am 09:27 AM

So implementieren Sie Bildlaufleisten in CSS, ohne die Höhe zu belegen: 1. Öffnen Sie die entsprechende HTML-Datei. 2. Suchen Sie den Originalcode „overflow-x: auto;“. 3. Ändern Sie den Wert im Attribut „overflow-x: auto;“. zu „overflow-x: overlay;“ kann dazu führen, dass die Bildlaufleiste die Position nicht einnimmt.

Chrome kommt mit überlappenden Bildlaufleisten im Windows 11-Stil Chrome kommt mit überlappenden Bildlaufleisten im Windows 11-Stil Apr 23, 2023 pm 06:40 PM

Wie die meisten von uns inzwischen wissen, verfügt das neue Microsoft-Betriebssystem Windows 11 über Overlay-Bildlaufleisten, deren Form sich ändert, wenn wir uns ihnen nähern oder sie verwenden. Es könnte Sie interessieren, dass die gleichen dynamischen Funktionen auch in Chromium-Browsern getestet werden. Das bedeutet im Grunde, dass die kommende experimentelle Windows 11-Version des Chrome-Browsers bald über eine Overlay-Bildlaufleistenfunktion verfügen könnte. Chrome wird bald über Overlay-Bildlaufleisten im Windows 11-Stil verfügen, die das in Redmond ansässige Technologieunternehmen seit August 2021 in seinem Chromium-basierten Edge-Webbrowser testet.

See all articles