Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

react-just-parallax

Package Overview
Dependencies
Maintainers
1
Versions
27
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-just-parallax

React library for scroll and mousemove parallax effect ✨ Open source, production-ready

  • 3.1.16
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

React Just Parallax

React Just Parallax

React library for scroll and mousemove parallax effect ✨
Open source, production-ready


React Just Parallax is an open source, production-ready library that's designed for all creative developers and more.

  • Written in TypeScript
  • Super lightweight
  • Easy to use
  • blazing fast
  • Link to official NPM page.

📜 Examples

⚖️ License

  • React Just Parallax is MIT licensed.

✍🏻 Author

🐇 Quick start

npm install react-just-parallax
import { MouseParallax, ScrollParallax } from "react-just-parallax";

export const MyComponent = () => (
  <>
    <MouseParallax>
      <p>I'm reacting to mouse move</p>
    </MouseParallax>

    <ScrollParallax>
      <p>I'm reacting to scroll</p>
    </ScrollParallax>
  </>
);

Props for MouseParallax

NameTypeDefaultDescription
strengthnumber0.14Parallax offset multiplier. Moving mouse by 10 pixels will move element position by 10px * strength
lerpEasenumber0.06Determines how quick the interpolation between offset values occurs (the higher the quicker)
isAbsolutelyPositionedbooleanfalseIf the element you want to use parallax on is positioned absolutely, set this prop to true
zIndexnumber | nullnullSpecify element's outer container z-index (useful while using isAbsolutelyPositioned prop)
shouldPausebooleantrueStops element from reacting to scroll and interpolating offset if it is out of view
enableOnTouchDevicebooleanfalseTurns on/off parallax effect on touch devices
scrollContainerRefReact.MutableRefObject | nullnullUse when element is situated in scrollable element other than window
parallaxContainerRefReact.MutableRefObject | nullnullBy default, element reacts to mousemove on window. You can specify any other container using this prop to make element react only within given container
shouldResetPositionbooleanfalseResets element's position if cursor leaves window or leaves parallaxContainerRef

Props for ScrollParallax

NameTypeDefaultDescription
strengthnumber0.14Parallax offset multiplier. Scrolling by 10 pixels will move element position by 10px * strength
lerpEasenumber0.06Determines how quick the interpolation between offset values occurs (the higher the quicker)
isAbsolutelyPositionedbooleanfalseIf the element you want to use parallax on is positioned absolutely, set this prop to true
zIndexnumber | nullnullSpecify element's outer container z-index (useful while using isAbsolutelyPositioned prop)
shouldPausebooleantrueStops element from reacting to scroll and interpolating offset if it is out of view
enableOnTouchDevicebooleantrueTurns on/off parallax effect on touch devices
isHorizontalbooleanfalseEnable if using horizontal scrolling
scrollContainerRefReact.MutableRefObject | nullnullUse when element is situated in scrollable element other than window

Recalculating values on demand for ScrollParallax

It's sometimes necessary to update values such as element's position or sizes on demand, for example if the DOM structure changes.

Library can't know of this kind of changes so it is not able to handle it by itself, and that's when we need to use ScrollParallaxHandle to update them manually.

import { ScrollParallax, ScrollParallaxHandle } from "react-just-parallax";

export const MyComponent = () => {
  const [display, setDisplay] = useState(true);
  const scrollParallaxRef = useRef<ScrollParallaxHandle | null>(null);

  useEffect(() => {
    scrollParallaxRef.current?.updateValues();
  }, [display]);

  return (
    <>
      <ScrollParallax ref={scrollParallaxRef}>
        <p>I'm reacting to scroll</p>
      </ScrollParallax>

      {display && (
        <button onClick={() => setDisplay((false)}>
          Disappear me
        </button>
      )}
    </>
  );
};

Keywords

FAQs

Package last updated on 30 Mar 2023

Did you know?

Socket

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc