Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

140
Views
How to create automatic slideahow using react
import React,{useState} from 'react'
import { sliderData } from './sliderData'
import ArrowBackIosIcon from '@material-ui/icons/ArrowBackIos';
import ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';
import "./SlideShow.css"
export default function SlideShow() {
    const [currentImg,setCurrentImg]=useState(0)
    return (
         <div >
            <h3>SlideShow</h3>
             <div className="slideshow" >
              <div className="slider" style= 
                 {{backgroundImage:`url(${sliderData[currentImg].image})`}}>
                   <div className="left"><ArrowBackIosIcon onClick={()=>{currentImg>0 &&  
                     setCurrentImg(currentImg-1)}}/></div>
                    <div className="center"></div>
                    <div className="right"><ArrowForwardIosIcon onClick={()=>{ 
                       currentImg<sliderData.length-1 && setCurrentImg(currentImg+1)}}/></div>
                   </div>
             </div>
          </div>
       )
    }

I want to make this slideshow automatically moving and pause slideshow on hover .Should not collapse at last image

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

        import React,{useState,useEffect} from 'react'
        import { sliderData } from './sliderData'
        import ArrowBackIosIcon from '@material-ui/icons/ArrowBackIos';
        import ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';
        import "./SlideShow.css"
        export default function SlideShow() {

        const [currentImg,setCurrentImg]=useState(0)
        const [hovered,setHovered]=useState(false)

        useEffect(() => {

        if(!hovered ){
           const interval=setTimeout(() => {
           const newSlideIndex= currentImg>=sliderData.length-1 ?0:currentImg+1;
      
          setCurrentImg(newSlideIndex );
       }, 1000);

     return(() => {

     
            })

      }
      }, [currentImg])


     return (
   
            <div >
             <h3>SlideShow</h3>
             <div className="slideshow"  >
                <div  className="slider" onMouseOver={()=>setHovered(true)}  
                 style= 
                    {{backgroundImage:`url(${sliderData[currentImg].image})`}}>
                <div className="left"><ArrowBackIosIcon   onClick={()=> 
                 {currentImg>0 &&  setCurrentImg(currentImg-1)}}/> </div>
                <div className="center"></div>
                <div className="right" ><ArrowForwardIosIcon  onClick={()=>{ 
                  currentImg<sliderData.length-1 && 
                   setCurrentImg(currentImg+1)}}/></div>
              </div>
              </div>
            </div>

          )
        }

This is pausing on hover but didnt continue sliding after hover

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!