AnimateOnScroll

    AnimateOnScroll AnimateOnScroll is used to apply animations to elements when entering or leaving the viewport during scrolling.

    
    import { AnimateOnScroll } from 'primeng/animateonscroll';
    
    

    Animation classes are defined with the enterClass and leaveClass properties. This example utilizes PrimeFlex animations however any valid CSS animation is supported.

    Scroll Down
    fade-in
    fade-left
    fade-right
    zoom
    flip-left
    flip-y
    scalein
    
    <div class="flex flex-col items-center gap-2">
        <span class="text-xl font-medium">Scroll Down</span>
        <span class="slidedown-icon h-8 w-8 bg-primary text-primary-contrast rounded-full inline-flex items-center justify-center">
            <i class="pi pi-arrow-down"></i>
        </span>
    </div>
    <div class="h-[30rem]"></div>
    <div
        pAnimateOnScroll
        enterClass="animate-fadein"
        leaveClass="animate-fadeout"
        class="flex bg-primary text-primary-contrast shadow-lg justify-center items-center h-40 w-40 sm:h-60 sm:w-60 rounded-2xl animate-duration-1000"
    >
        <span class="text-3xl font-bold">fade-in</span>
    </div>
    <div class="h-[30rem]"></div>
    <div
        pAnimateOnScroll
        enterClass="animate-fadeinleft"
        leaveClass="animate-fadeoutleft"
        class="flex bg-primary text-primary-contrast shadow-lg justify-center items-center h-40 w-40 sm:h-60 sm:w-60 rounded-2xl animate-duration-1000 animate-ease-in-out"
    >
        <span class="text-3xl font-bold">fade-left</span>
    </div>
    <div class="h-[30rem]"></div>
    <div
        pAnimateOnScroll
        enterClass="animate-fadeinright"
        leaveClass="animate-fadeoutright"
        class="flex bg-primary text-primary-contrast shadow-lg justify-center items-center h-40 w-40 sm:h-60 sm:w-60 rounded-2xl animate-duration-1000 animate-ease-in-out"
    >
        <span class="text-3xl font-bold">fade-right</span>
    </div>
    <div class="h-[30rem]"></div>
    <div
        pAnimateOnScroll
        enterClass="animate-zoomin"
        leaveClass="animate-fadeout"
        class="flex bg-primary text-primary-contrast shadow-lg justify-center items-center h-40 w-40 sm:h-60 sm:w-60 rounded-2xl animate-duration-1000"
    >
        <span class="text-3xl font-bold">zoom</span>
    </div>
    <div class="h-[30rem]"></div>
    <div
        pAnimateOnScroll
        enterClass="animate-flipleft"
        leaveClass="animate-fadeout"
        class="flex bg-primary text-primary-contrast shadow-lg justify-center items-center h-40 w-40 sm:h-60 sm:w-60 rounded-2xl animate-duration-1000 animate-ease-in-out"
    >
        <span class="text-3xl font-bold">flip-left</span>
    </div>
    <div class="h-[30rem]"></div>
    <div
        pAnimateOnScroll
        enterClass="animate-flipup"
        leaveClass="animate-fadeout"
        class="flex bg-primary text-primary-contrast shadow-lg justify-center items-center h-40 w-40 sm:h-60 sm:w-60 rounded-2xl animate-duration-1000 animate-ease-in-out"
    >
        <span class="text-3xl font-bold">flip-y</span>
    </div>
    <div class="h-[30rem]"></div>
    <div
        pAnimateOnScroll
        enterClass="animate-scalein"
        leaveClass="animate-fadeout"
        class="flex bg-primary text-primary-contrast shadow-lg justify-center items-center h-40 w-40 sm:h-60 sm:w-60 rounded-2xl animate-duration-1000 animate-ease-in-out"
    >
        <span class="text-3xl font-bold">scalein</span>
    </div>
    
    

    Screen Reader

    AnimateOnScroll does not require any roles and attributes.

    Keyboard Support

    Component does not include any interactive elements.