
Security News
Axios Supply Chain Attack Reaches OpenAI macOS Signing Pipeline, Forces Certificate Rotation
OpenAI rotated macOS signing certificates after a malicious Axios package reached its CI pipeline in a broader software supply chain attack.
scroll-follow-tab
Advanced tools
Scroll Follow Tab is a lightweight javascript library without jQuery, no dependencies. It is used to make scrollspy effect for your menu, table of contents, etc. Only 21.7Kb.
Install NPM package - https://www.npmjs.com/package/scroll-follow-tab:
npm i scroll-follow-tab
Easy for using, Demo here: 👉 https://codesandbox.io/s/objective-tharp-3zwo8h?file=/src/App.js
or syntax just like this:
scrollSpy(menuElement, options)
This little plugin will add active class into your existing menu item when you scroll your page to a matched section by ID.
If you are giving it a try, make sure that you:
active class in your menu item. Because, this plugin do NOT include CSS.<section id="first-section">...</section>href.
Example: "href"="#first-section".
You also replace href with the other name by hrefAttribute in options.menuElement is query selector to your menu. It is String or HTMLElement instance.options is optional. It is type of Object which contains properties below:| Name | Type | Default | Description |
|---|---|---|---|
sectionClass | String | .scrollspy | Query selector to your sections |
menuActiveTarget | String | li > a | Element will be added active class |
offset | Number | 0 | Offset number |
hrefAttribute | String | href | The menu item's attribute name which contains section ID |
activeClass | String | active | Active class name will be added into menuActiveTarget |
scrollContainer | String, HTMLElement | empty string | User Defined Scrolling Container |
smoothScroll | Boolean, Object | false | Enable the smooth scrolling feature |
smoothScrollBehavior | Function | undefined | Define your smooth scroll behavior |
import scrollSpy from 'scroll-follow-tab'
const options = {
sectionClass: '.scrollspy', // Query selector to your sections
menuActiveTarget: '.menu-item', // Query selector to your elements that will be added `active` class
offset: 100, // Menu item will active before scroll to a matched section 100px
scrollContainer: '.scroll-container' // Listen scroll behavior on `.scroll-container` instead of `window`
}
// init:
scrollSpy(document.getElementById('main-menu'), options)
// or shorter:
scrollSpy('#main-menu', options)
<script src="/path/to/dist/simple-scrollspy.min.js"></script>
<script>
window.onload = function () {
scrollSpy('#main-menu', {
sectionClass: '.scrollspy',
menuActiveTarget: '.menu-item',
offset: 100,
// smooth scroll
smoothScroll: true,
smoothScrollBehavior: function (element) {
console.log('run "smoothScrollBehavior"...', element)
element.scrollIntoView({ behavior: 'smooth' }) // default behavior
}
})
}
</script>
import jumpTo from 'jump.js'
scrollSpy('#main-menu', {
// ....,
// enable smooth scroll:
// - true: enable with the default scroll behavior
// - false: disable this feature
// - object: enable with some options that will pass to `Element.scrollIntoView` or `smoothScrollBehavior`
// + Default behavior: https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView
// + Jump.js: https://www.npmjs.com/package/jump.js
smoothScroll: true,
// customize scroll behavior,
// - default: Element.scrollIntoView({ ...smoothScroll, behavior: 'smooth' })
// - customize: you can define your scroll behavior. Ex: use `jump.js`, jQuery, .etc
smoothScrollBehavior: function (element, options) {
// use `jump.js` instead of the default scroll behavior
jumpTo(element, {
duration: 1000,
offset: -100
})
}
})
$ yarn install
$ yarn dev
$ yarn build
or:
$ npm run build
FAQs
Scroll follow tab implemented by javascript, no dependencies.
The npm package scroll-follow-tab receives a total of 0 weekly downloads. As such, scroll-follow-tab popularity was classified as not popular.
We found that scroll-follow-tab demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
OpenAI rotated macOS signing certificates after a malicious Axios package reached its CI pipeline in a broader software supply chain attack.

Security News
Open source is under attack because of how much value it creates. It has been the foundation of every major software innovation for the last three decades. This is not the time to walk away from it.

Security News
Socket CEO Feross Aboukhadijeh breaks down how North Korea hijacked Axios and what it means for the future of software supply chain security.