Changer l'image au survol en JavaScript

Anika Tabassum Era 12 octobre 2023
  1. Utilisez les attributs HTML onmouseover et onmouseout pour déclencher des fonctions
  2. Utilisez la méthode .hover() pour changer l’image au survol
Changer l'image au survol en JavaScript

En JavaScript, nous suivons un bloc de code ou une méthode spécifique pour effectuer la tâche de modification d’une image au survol de la souris. Le moyen efficace consiste plutôt à créer une fonction définie par l’utilisateur qui tiendra compte de la source de l’image et coopérera avec les effets de survol de la souris.

Nos jeux d’exemples afficheront une démonstration avec les attributs HTML onmouseout et onmouseover pour déclencher certaines fonctions dans le segment de script. Aussi, dans un second temps, nous aurons une fonction .hover() associée au jQuery.

Vérifions la base de code pour un concept clair.

Utilisez les attributs HTML onmouseover et onmouseout pour déclencher des fonctions

Le principe de fonctionnement de base est basé sur onmouseover et onmouseout. Et ces attributs correspondent à la fonction qui a sa description pour changer les images en survol.

Nous aurons besoin d’un jQuery CDN pour faire fonctionner la fonction car il se trouve qu’il s’appuie sur jQuery avec .attr().

Extrait de code:

<script src="https://code.jquery.com/jquery-3.1.0.js"></script>
<div id="menu" >
    <a href="#" id="home">
        <img id='menuImg' src="https://images.unsplash.com/photo-1653398597364-c63c01f261cc?crop=entropy&cs=tinysrgb&fm=jpg&ixlib=rb-1.2.1&q=80&raw_url=true&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=1974" alt="logo" width="200px" height="150px"
onmouseover="onHover();" onmouseout="offHover();" />
    </a>
</div>
function onHover() {
  $('#menuImg')
      .attr(
          'src',
          'https://images.unsplash.com/photo-1653398597887-5005619e8cdc?ixlib=rb-1.2.1&raw_url=true&q=80&fm=jpg&crop=entropy&cs=tinysrgb&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=774');
}

function offHover() {
  $('#menuImg')
      .attr(
          'src',
          'https://images.unsplash.com/photo-1653398597364-c63c01f261cc?crop=entropy&cs=tinysrgb&fm=jpg&ixlib=rb-1.2.1&q=80&raw_url=true&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=1974');
}

Production:

Utilisez les attributs HTML onmouseover et onmouseout pour déclencher des fonctions

Utilisez la méthode .hover() pour changer l’image au survol

Cet exemple illustre la façon dont jQuery traite la classe img home. Nous aurons la classe initialisée pour notre source d’image, puis nous générerons la fonction en fonction des besoins.

La différence avec le précédent est que nous n’avons utilisé aucun attribut HTML ici. Nous nous sommes plutôt appuyés sur la méthode .hover(), qui fonctionne clairement.

Passons au code.

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>Test</title>
</head>
<body>
  <div>
    <img height="150px" width="200px" src="https://images.unsplash.com/photo-1653398597887-5005619e8cdc?ixlib=rb-1.2.1&raw_url=true&q=80&fm=jpg&crop=entropy&cs=tinysrgb&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=774" alt="" class="home">
  </div>
<script src="https://code.jquery.com/jquery-3.1.0.js"></script>
<script  type='text/javascript'>
$(document).ready(function(){
    $(".home").hover(
        function() {$(this).attr("src","https://images.unsplash.com/photo-1653398597364-c63c01f261cc?crop=entropy&cs=tinysrgb&fm=jpg&ixlib=rb-1.2.1&q=80&raw_url=true&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=774");},
        function() {$(this).attr("src","https://images.unsplash.com/photo-1653398597887-5005619e8cdc?ixlib=rb-1.2.1&raw_url=true&q=80&fm=jpg&crop=entropy&cs=tinysrgb&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=774");
    });
});
</script>
</body>
</html>

Production:

Utilisez la méthode hover() pour changer l&rsquo;image au survol

Anika Tabassum Era avatar Anika Tabassum Era avatar

Era is an observer who loves cracking the ambiguos barriers. An AI enthusiast to help others with the drive and develop a stronger community.

LinkedIn Facebook

Article connexe - JavaScript Image