Skip to content

neolikotsi/shebi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

shebi-js - Javascript event for CSS position:sticky

shebi logo

Motivation

Inspired by this Google Article, Ezekiel 3:17 shebi, watchman, adds a DOM event to a HTML Element to observer when the Element starts behaving sticky.

Installation

npm i shebi

Usage

import shebi from "shebi";
import "shebi/css/shebi.css";

shebi("selector").on("stick-change", evt => {
    let target = evt.details.target;
    let stuck = evt.details.stuck;

    if (stuck) {
        // do something
        target.classList.add('shadow');
    } else {
        target.classList.remove('shadow');
    }
});

The package adds a class sticky_sentinel--wrapper to the parent of the target selector.

Config

You can set the debug mode to see when the inserted DIV shebi uses to determine when the target selector is stuck or not.

let shebyjs = shebi('selector', { debug: true });