es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

El evento devuelve [object MouseEvent] en lugar del texto.

Tengo mi etiqueta p que debería cambiar el texto cuando activo el evento mouseover, pero de alguna manera obtengo [object MouseEvent] como resultado y no el texto.

HTML

<p id="album-name-1"
  onmouseover="changeText('follow me around, greatest song of the album!')">
  cambiar el texto
</p>

JS

      var par = document.querySelector("#album-name-1");

  par.addEventListener("mouseover", changeText);

  function changeText(text) {
    if (this.id === "album-name-1") {
      par.innerHTML = text;
    }
  }


Quería hacer esto con el uso de la palabra clave “this”, pero de alguna manera no funciona como espero. ¿Alguna sugerencia?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Puede usar el objeto event para acceder al elemento que activó el evento. Intente cambiar su función changeText a lo siguiente:

    function changeText(event) {
      if (event.target.id === "album-name-1") {
        event.target.innerHTML = '¡sígueme en todo, la mejor canción del álbum!';
      }
    }
    

Comments are closed.