Définit une liste / menu de commandes
Découvrez le potentiel de l'attribut d'événement 'ondrag' en HTML. définition, syntaxe, les paramètres qu'il accepte, les valeurs possibles, et explorez des exemples pratiques d'utilisation. astuces et conseils pour rendre vos pages web plus interactives grâce à la fonctionnalité de glisser-déposer en HTML
L'attribut d'événement ondrag est utilisé pour définir une fonction JavaScript qui sera exécutée lorsque l'élément est en cours de déplacement (drag-and-drop). Cela peut être utile pour créer des fonctionnalités interactives sur une page web.
La syntaxe générale pour utiliser l'attribut ondrag est la suivante :
<element ondrag="maFonction(event)">
où maFonction est le nom de la fonction JavaScript que vous souhaitez exécuter lors du déplacement, et event est l'objet d'événement associé.
La fonction spécifiée dans ondrag peut accepter un paramètre event, qui contient des informations sur l'événement de déplacement, telles que la position actuelle de la souris.
Les valeurs possibles pour ondrag sont des noms de fonctions JavaScript, sans les parenthèses.
Voici un exemple simple qui change la couleur de fond de l'élément en cours de déplacement :
Exemple : Copier le code
<div ondrag="changeCouleur(event)" style="width: 100px; height: 100px; background-color: #3498db;"> Faites glisser-moi ! </div> <script> function changeCouleur(event) { event.target.style.backgroundColor = "#e74c3c"; } </script>
Expliquons le code dans l'exemple :
code HTML :
ondrag="changeCouleur(event)": Cet attribut HTML spécifie la fonction JavaScript (changeCouleur) à exécuter lorsque l'élément est en cours de glissement. L'événement event est passé à la fonction.
draggable="true" : Cet attribut HTML indique que l'élément peut être déplacé en utilisant l'API de glisser-déposer.
style="width: 100px; height: 100px; background-color: #3498db;" : Cela définit les propriétés de style initiales de l'élément, y compris la largeur, la hauteur et la couleur de fond.
JavaScript :
La fonction changeCouleur est définie en JavaScript. Cette fonction prend un argument event, qui représente l'événement de glisser-déposer.
event.target fait référence à l'élément sur lequel l'événement s'est produit, dans ce cas, le <div>.
event.target.style.backgroundColor = "#e74c3c"; modifie la propriété backgroundColor du style de l'élément pour changer sa couleur de fond en rouge (#e74c3c).
En résumé, lorsque l'utilisateur fait glisser l'élément (<div>), la fonction changeCouleur est appelée, et elle modifie la couleur de fond de l'élément en rouge. Cela crée un effet visuel dynamique lorsque l'élément est en cours de déplacement.
Exemple : Copier le code
<!DOCTYPE html> <html lang="fr"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Tutoriel : L'attribut d'événement ondrag en HTML</title> <style> .zone-de-depot { float: left; width: 100px; height: 35px; margin: 15px; padding: 10px; border: 1px solid #aaaaaa; } </style> </head> <body> <h1>L'attribut d'événement ondrag en HTML</h1> <p>Faites glisser l'élément 'p' de gauche à droite ou de droite à gauche entre les deux rectangles :</p> <div class="zone-de-depot" ondrop="deposer(event)" ondragover="autoriserDepot(event)"> <p ondragstart="debutGlisser(event)" ondrag="enCoursDeGlisser(event)" draggable="true" id="cible-de-glissement">Glissez-moi !</p> </div> <div class="zone-de-depot" ondrop="deposer(event)" ondragover="autoriserDepot(event)"></div> <p style="clear:both;" id="info"></p> <script> function debutGlisser(event) { event.dataTransfer.setData("Texte", event.target.id); } function enCoursDeGlisser(event) { document.getElementById("info").innerHTML = "L'élément 'p' est en cours de glissement"; } function autoriserDepot(event) { event.preventDefault(); } function deposer(event) { event.preventDefault(); let data = event.dataTransfer.getData("Texte"); event.target.appendChild(document.getElementById(data)); document.getElementById("info").innerHTML = "L'élément 'p' a été déposé"; } </script> </body> </html>
Ce code HTML et JavaScript implémente un système de glisser-déposer pour déplacer un élément <p> d'une zone à une autre. Voici une explication détaillée :
En utilisant l'attribut ondrag, vous pouvez rendre vos pages web plus interactives en permettant aux utilisateurs de faire glisser des éléments et d'interagir avec votre contenu de manière nouvelle et engageante.
L'attribut d'événement ondrag est pris en charge dans tous les principaux navigateurs.