1.2.0 • Published 1 year ago

usescrolltrigger v1.2.0

Weekly downloads
-
License
-
Repository
-
Last release
1 year ago

A React hook that allows you to trigger transitions based on scroll event (uses Intersection observer).

Written in TypeScript.

Install

yarn add usescrolltrigger 
# or
npm install usescrolltrigger 

Options

OptionTypeDescriptionDefault
refundefined | RefObject | HTMLElementA ref or element to observe.undefined
onScroll(e:Event)=>voidundefinedcall this handler on scroll

Response

NameTypeDescription
containerRefRefCallbackA callback to be passed to scroller "ref" prop.
register(Register)=>RegisterResponseprop getter to spread on component to register

Register

NameTypeDescription
namestring(required)name for the component to register
startstringnumberoffset from the bottom of scrollcontainer to trigger start
endstringnumberoffset from the bottom of scrollcontainer to trigger end
onStart(EventProps)=>voidcall when triggered on start
onEnd(EventProps)=>voidcall when reached the end
onProgress(EventProps)=>voidcall while progressing from start-end

EventProps

NameTypeDescription
nodeHTMLElementHTMLElement of the registered component
entryIntersectionObserverEntryIntersection observer entry
scrollingUpbooleanTo indicate scrolling direction
progressnumber0 to 1 from start-end

Basic Usage

import React from "react";
import useScrollTrigger from "usescrolltrigger ";

const App = () => {
  const { register } =useScrollTrigger<HTMLDivElement>();

  return (
    <div {...register({name,onProgress:({node,entry,scrollingUp,progress)=>{
    node.innerHtml=`${progress}`
    }})}>
<!--       component to track scrollposition in viewport -->
    </div>
  );
};

License

MIT

1.2.0

1 year ago

1.1.0

2 years ago

1.0.0

2 years ago