MenuSpy
A JavaScript library to make navigation menus highlight the item based on currently in view section.
- No dependencies
- Easy to use
- Lightweight and fast
Usage
Include MenuSpy
MenuSpy
will be available in the global scope.
Or install via NPM/Yarn and require as a module
npm install menuspy
var MenuSpy = ;
Initialize the plugin on your menu element
Features Usage Options Examples
You can also use data-target
on the anchor element with a selector. Example:
Anything
var elm = document;var ms = elm;
The MenuSpy()
constructor accepts two arguments: the container element and an options object.
Options
Option | Type | Default | Description |
---|---|---|---|
menuItemSelector |
String | a[href^="#"] |
Menu items selector. |
activeClass |
String | active |
Class applied on menu item relative to the currently visible section. |
threshold |
Integer | 15 |
Ammount of space between your menu and the next section to be activated. |
enableLocationHash |
Boolean | true |
Enable or disable browser's hash location change. |
hashTimeout |
Integer | 600 |
Timeout to apply browser's hash location. |
callback |
Function | function(currentItem) {} |
A function to be called every time a new menu item activates. |