Class SplitText<StaticProps, ChangeableProps, CallbacksTypes>

SplitText is a component that splits your text into lines, words, and letters so that you can animate them. It supports auto-resizing for lines and styled content when using HTML inside your text.

Inspired by GSAP's SplitText plugin and SplitType.

P.S. Apply fontKerning: none to your container to prevent large layout shifts.

Type Parameters

Hierarchy

  • Component<StaticProps, ChangeableProps, CallbacksTypes>
    • SplitText

Constructors

Accessors

  • get isDestroyed(): boolean
  • Checks if the module has been destroyed.

    Returns boolean

  • get isInitialized(): boolean
  • Checks if the module has been initialized.

    Returns boolean

  • get name(): string
  • The name of the module, derived from the class name

    Returns string

  • get props(): TRequiredModuleProp<StaticProps & ChangeableProps>
  • The current properties of the module, which include both static and changeable properties. These can be retrieved dynamically during the module's lifecycle.

    Returns TRequiredModuleProp<StaticProps & ChangeableProps>

Methods

  • Adds a custom callback to the module.

    Type Parameters

    • T extends string | number | symbol

    Parameters

    • target: T

      The event type to listen for (e.g., 'propsChange', 'destroy').

    • action: TAction<CallbacksTypes[T]>

      The function to execute when the event is triggered.

    • settings: ISettings = {}

      Additional settings for the callback.

    Returns IAddedCallback

  • Adds a DOM event listener that will be automatically removed when the module is destroyed.

    Type Parameters

    • Target extends keyof HTMLElementEventMap

    • Listener extends ((event) => void)

    Parameters

    • element: Document | Element | Window

      The target element for the event listener.

    • target: Target

      The event type to listen for (e.g., 'click', 'resize').

    • callback: Listener

      The callback function to execute when the event is triggered.

    • Optional options: boolean | AddEventListenerOptions

      Additional options for the event listener.

    Returns (() => void)

      • (): void
      • Returns void

  • Adds a plugin to the component. The plugin is initialized upon being added, and the plugin's component property is set to the current component instance.

    Type Parameters

    • T extends Plugin<any, any, any, any>

    Parameters

    • plugin: T

      An instance of the Plugin class to be added.

    Returns void

  • Adds a viewport callback that will be automatically removed when the module is destroyed.

    Parameters

    • target: keyof IViewportCallbackTypes

      The viewport target (e.g., width or height).

    • action: (() => void)

      The callback function to execute when the viewport target changes.

        • (): void
        • Returns void

    • data: undefined | ISettings = {}

      Additional data for the callback.

    Returns void

  • Splits the text in the container into letters, words, and optionally lines, based on the component properties.

    Returns void