Slides is a React component designed to deliver seamless slide animations, enabling the smooth display and concealment of content

Smooth slide Toggle React

slide-toggle-react is a React component that provides a smooth slide animation for showing and hiding content. It allows you to easily create collapsible elements with customizable duration and easing functions.

Installation

You can install the package using npm:

npm install  react-smooth-slide-toggle

Usage

import React from 'react';
import SlideToggle from 'slide-toggle-react';

const App = () => {
  return (
    <SlideToggle trigger={<button>Toggle Content</button>}>
      <div>
        <p>This content will slide in and out when the button is clicked.</p>
      </div>
    </SlideToggle>
  );
};

export default App;

Props

The SlideToggle component accepts the following props:

trigger: (required) React element that serves as the trigger for the slide animation. When this element is clicked, the content will slide in or out.

easing: (optional) Specifies the easing function to be used for the slide animation. Available options are:

  'easeLinear'  Default
  'easeInQuad'
  'easeOutQuad'
  'easeInOutQuad'
  'easeInCubic'
  'easeOutCubic'
  'easeInOutCubic'
  'easeInQuart'
  'easeOutQuart'
  'easeInOutQuart'
  'easeInQuint'
  'easeOutQuint'
  easeInOutQuint'

duration: (optional) The duration of the slide animation in milliseconds. Default is 700ms.

expanded: (optional) If set to true, the content will be initially shown. If set to false, the content will be initially hidden. Default is false.

callBack: (optional) A callback function that will be called after the slide animation is completed.

API Reference

SlideToggle

A React component that handles slide animations for showing and hiding content.

getTotalHeightWithMargins(element: HTMLElement): number 

A utility function to calculate the total height of an element, considering its height and top and bottom margins.

Example with Custom Easing and Duration

import React from 'react';
import SlideToggle from 'slide-toggle-react';

const App = () => {
  return (
    <SlideToggle
      trigger={<button>Toggle Content</button>}
      easing="easeOutQuad"
      duration={1000}
      expanded={true}
    >
      <div>
        <p>This content will slide in and out with a custom easing and duration.</p>
      </div>
    </SlideToggle>
  );
};

export default App;

Contribution

Contributions are welcome! If you find any issues or have suggestions for improvements, feel free to create a pull request or open an issue on GitHub.

License

This project is licensed under the MIT License.

GitHub

View Github

Related Posts

Recent Posts

ഇടുക്കിയിലെ മലയോര മേഖലകളിൽ രാത്രിയാത്ര നിരോധിച്ചു. രാത്രി ഏഴു മുതൽ രാവിലെ ആറു വരെയാണ് നിരോധനം

ഏന്തയാർ ഈസ്റ്റിൽ പ്രളയത്തിൽ തകർന്ന പാലത്തിന് പകരം പുതിയ പാലം നിർമ്മിക്കുവാൻ താത്ക്കാലിക പാലം പൊളിച്ച് നീക്കി

Explore the Investment Opportunities: A Comprehensive Guide to Different Types of Mutual Funds

Title: Understanding Mutual Funds: A Beginner's Guide to Investing

തീവ്രമഴ മുന്നറിയിപ്പിന്റെ പശ്ചാതലത്തിൽ സംസ്ഥാനം ജാഗ്രതയിൽ

250,000 അപേക്ഷകൾ വർദ്ധിച്ചതിനാൽ ട്രാൻസ്‌പോർട്ട് കമ്മീഷണർ പരിശോധന പുനരാരംഭിക്കും

ഏലക്കയിൽ കീടനാശിനി സാന്നിധ്യം; ആറര ലക്ഷത്തിലധികം ടിൻ അരവണ നശിപ്പിക്കാൻ ടെൻഡർ ക്ഷണിച്ച് ദേവസ്വം ബോർഡ്‌

ഭീമൻ പാറക്കഷണങ്ങൾ അടർന്ന് ദേശീയ പാതയിലേക്ക് വീഴുന്നത് പതിവാകുന്നു. കുട്ടിക്കാനത്തിനും മുണ്ടക്കയത്തിനുമിടയിൽ നിലനിൽക്കുന്നത് വൻ അപകട ഭീഷണി

ചക്രവാതച്ചുഴി:അതിശക്തമായ മഴ വരുന്നു

പ്ലസ് വൺ പ്രവേശനം. അക്ഷയയിൽ തിക്കി തിരക്കേണ്ട, നെറ്റിവിറ്റി/ജാതി തെളിയിക്കാൻ പത്താംതരം സർട്ടിഫിക്കറ്റ് മതി