Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Learn Custom Controls and Programmatic Navigation | Interactivity, Accessibility, and Best Practices
Interactive React Sliders with Swiper.js

bookCustom Controls and Programmatic Navigation

SwiperJS allows you to control a slider programmatically from your React components. This is useful when you want to create custom navigation buttons, place controls outside the slider, or trigger slide changes based on user actions elsewhere in your UI.

To achieve this, you can capture the Swiper instance using the onSwiper callback. Once the instance is available, you can call Swiper's navigation methodsβ€”such as slideNext() and slidePrev()β€”directly from your own event handlers.

This approach gives you full control over the slider's behavior without relying on Swiper's built-in navigation UI. It also keeps your component logic clear and React-friendly, making it easy to integrate Swiper with other parts of your application.

Programmatic navigation is commonly used for custom buttons, step-based interfaces, onboarding flows, or any situation where slide changes need to be triggered by external UI elements rather than swipe gestures alone.

import { useState } from "react";
import { Swiper, SwiperSlide } from "swiper/react";
import "swiper/css";

export default function CustomSwiper() {
  const [swiper, setSwiper] = useState(null);

  return (
    <div style={{ maxWidth: 600, margin: "40px auto" }}>
      <div style={{ display: "flex", gap: 12, marginBottom: 12 }}>
        <button onClick={() => swiper?.slidePrev()}>Previous</button>
        <button onClick={() => swiper?.slideNext()}>Next</button>
      </div>

      <Swiper slidesPerView={1} onSwiper={setSwiper}>
        <SwiperSlide>Slide 1</SwiperSlide>
        <SwiperSlide>Slide 2</SwiperSlide>
        <SwiperSlide>Slide 3</SwiperSlide>
      </Swiper>
    </div>
  );
}
question mark

Which of the following statements best describes how you can programmatically control a SwiperJS slider in React using custom navigation buttons?

Select the correct answer

Everything was clear?

How can we improve it?

Thanks for your feedback!

SectionΒ 4. ChapterΒ 2

Ask AI

expand

Ask AI

ChatGPT

Ask anything or try one of the suggested questions to begin our chat

bookCustom Controls and Programmatic Navigation

Swipe to show menu

SwiperJS allows you to control a slider programmatically from your React components. This is useful when you want to create custom navigation buttons, place controls outside the slider, or trigger slide changes based on user actions elsewhere in your UI.

To achieve this, you can capture the Swiper instance using the onSwiper callback. Once the instance is available, you can call Swiper's navigation methodsβ€”such as slideNext() and slidePrev()β€”directly from your own event handlers.

This approach gives you full control over the slider's behavior without relying on Swiper's built-in navigation UI. It also keeps your component logic clear and React-friendly, making it easy to integrate Swiper with other parts of your application.

Programmatic navigation is commonly used for custom buttons, step-based interfaces, onboarding flows, or any situation where slide changes need to be triggered by external UI elements rather than swipe gestures alone.

import { useState } from "react";
import { Swiper, SwiperSlide } from "swiper/react";
import "swiper/css";

export default function CustomSwiper() {
  const [swiper, setSwiper] = useState(null);

  return (
    <div style={{ maxWidth: 600, margin: "40px auto" }}>
      <div style={{ display: "flex", gap: 12, marginBottom: 12 }}>
        <button onClick={() => swiper?.slidePrev()}>Previous</button>
        <button onClick={() => swiper?.slideNext()}>Next</button>
      </div>

      <Swiper slidesPerView={1} onSwiper={setSwiper}>
        <SwiperSlide>Slide 1</SwiperSlide>
        <SwiperSlide>Slide 2</SwiperSlide>
        <SwiperSlide>Slide 3</SwiperSlide>
      </Swiper>
    </div>
  );
}
question mark

Which of the following statements best describes how you can programmatically control a SwiperJS slider in React using custom navigation buttons?

Select the correct answer

Everything was clear?

How can we improve it?

Thanks for your feedback!

SectionΒ 4. ChapterΒ 2
some-alt