Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

186
Vistas
I want keep the audio play and Image movement when I go to other pages and got buck to the LP too

I have the code below that plays or pauses audio within a function of react. Currently, the audio plays even when I navigate to other pages like /Bio , /music or /contact. I want keep the audio play and Image movement when I go to other pages and got back to the LP too. And I want I can stop them.

How can I do this?

import React, { useState, useEffect, useMemo } from "react";
import { Col } from "react-bootstrap";
import "../Styles/LandingPage.css";


export function ClickableImage({ imgSrc, imgAlt, audioSrc }) {

    let audio = useMemo(() => new Audio (audioSrc), [audioSrc]);
    
    const [playing, setPlaying] = useState(false);
    
    const toggleAudio = () => setPlaying(!playing);
    
    useEffect(() => {
      playing ? audio.play() : audio.pause();
      audio.loop = true;
    },
    [playing, audio]
     );
    
     useEffect(() => {
      const stopPlaying = () => setPlaying(false);
      audio.addEventListener("ended", stopPlaying );
      return () => audio.removeEventListener("ended", stopPlaying);
    }, [audio]);

    const [active, setActive] = useState(false);
    const classToggle = () => {
    setActive(!active);

    return [playing, toggleAudio];
  }

  return (
    
    <Col md={2} sm={2} xs={2}>
      <img
        src={imgSrc}
        className={"img-fluid" + (active ? ` img-playing` : "")}
        alt={imgAlt}
        onClick={() => {
          toggleAudio();
          classToggle();
        }}
        />  
    </Col>

    )
  };

  export default ClickableImage
about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda