10 Best Scrollspy Plugins In JavaScript (2025 Update)

by jQueryScript,

Suppose you have a long web page or single page web app, you might need a scrollspy plugin to track the scroll position and indicate which content section your visitors are viewing on.

What Is Scrollspy?

Scrollspy is a technique widely used in modern web design that keeps track of scroll events in a scrollable container or the whole document and triggers certain functions on specified elements based on the scroll position.

A typical use of scrollspy is to automatically update items in header navigation or table of contents based on the scroll position you visitors scroll to.

The Best Scrollspy Plugin

To provide a better one page scroll experience on your long webpage, you shouldn't miss the 10 best jQuery and Vanilla JavaScript scrollspy plugins that can be used to keep track of what elements currently are on the screen. Enjoy.

Originally Published Aug 27 2020, updated Feb 16 2025

Table of contents:

Best jQuery Scrollspy Plugins

Highlight Active Menu Item Based On Scroll Position - ScrollSpy

A super tiny (less than 1kb) jQuery scrollspy plugin to highlight active menu items in the navigation based on the scroll position of the corresponding content within a container or the whole document.

Highlight Active Menu Item Based On Scroll Position - ScrollSpy

[Demo] [Download]


jQuery Plugin For Single Page Scroll To Navigation

A lightweight jQuery plugin for creating navigation links that allow to smoothly scroll to desired sections of your page. The plugin also has the ability to highlight the links to reflect the current section while you scrolling down or up.

jQuery Plugin For Single Page Scroll To Navigation

[Demo] [Download]


Sticky Header + Smooth Scroll + Scrollspy = Stoocky Page

A versatile jQuery plugin helps you create easy-to-navigate landing pages, portfolio websites, and single page web applications.

Sticky Header + Smooth Scroll + Scrollspy = Stoocky Page

[Demo] [Download]


Easy Scrollspy Navigation In jQuery - scrollspy.js

An easy yet fully customizable jQuery scrollspy navigation plugin that highlights active links of your site navigation as the user scrolls to the corresponding section.

Easy Scrollspy Navigation In jQuery - scrollspy.js

[Demo] [Download]


jQuery Plugin To Spy Scrolling Events - ScrollWatch

A robust and customizable jQuery scrollspy plugin that determines active page sections you're looking at and highlights the corresponding nav links on vertical page scrolling.

jQuery Plugin To Spy Scrolling Events - ScrollWatch

[Demo] [Download]


Best vanilla JS Scrollspy Plugins

Highlight Active Menu Based On The Scroll Position – active-menu-link

A pure JavaScript smooth scroll & scrollspy library which highlights the active menu item based on the scroll position.

Highlight Active Menu Based On The Scroll Position – active-menu-link

[Demo] [Download]


Scrollspy & Smooth Scroll Library – scrollspy.js

A lightweight pure JavaScript scrollspy library that enables the navigation links to smoothly scroll between page sections with scrollspy support.

Scrollspy & Smooth Scroll Library – scrollspy.js

[Demo] [Download]


Update Navigation Items Based On Scroll Position – ScrollSpy.js

A small pure JavaScript scrollspy library that automatically highlights navigation items based upon scroll position to indicate which content section is currently active in the viewport.

Update Navigation Items Based On Scroll Position – ScrollSpy.js

[Demo] [Download]


Highlight Active Menu Item On Page Scroll – MenuSpy.js

A multi-purpose JavaScript library for your one page scrolling website that highlights the menu item relative to the currently visible section.

Highlight Active Menu Item On Page Scroll – MenuSpy.js

[Demo] [Download]


Sticky Navigation With ScrollSpy Using Intersection Observer API

A sticky on-page navigation (a.k.a table of contents) that automatically highlights the active menu items based on the visibility of their corresponding content sections within the document.

Simple ScrollSpy Plugin With Pure JavaScript

[Demo] [Download]


More Resources:

Looking for more jQuery plugins or JavaScript libraries to implement the Scrollspy functionality on the web & mobile? See jQuery Scrollspy and JavaScript Scrollspy for more details.

See Also: