Flux rss
Collection CommentCaMarche.net

Javascript - Les événements

Qu'appelle-t-on un événement?

Les événements sont des actions de l'utilisateur, qui vont pouvoir donner lieu à une interactivité. L'événement par excellence est le clic de souris, car c'est le seul que le HTML gère. Grâce au Javascript il est possible d'associer des fonctions, des méthodes à des événements tels que le passage de la souris au-dessus d'une zone, le changement d'une valeur, ...

Ce sont les gestionnaires d'événements qui permettent d'associer une action à un événement. La syntaxe d'un gestionnaire d'événement est la suivante :

onEvenement="Action_Javascript_ou_Fonction();"

Lorsqu'il est utilisé dans un lien hypertexte, par exemple, la syntaxe sera la suivante :

<A href="URL" "onEvenement='Action_Javascript_ou_Fonction();'">Lien</a>

Les gestionnaires d'événements sont associés à des objets, et leur code s'insèrent dans la balise de ceux-ci...

Liste des événements

Evénement Description Test Effet
Abort
(onAbort)
Cet événement a lieu lorsque l'utilisateur interrompt le chargement de l'image    
Blur
(onBlur)
Se produit lorsque l'élément perd le focus, c'est-à-dire que l'utilisateur clique hors de cet élément, celui-ci n'est alors plus sélectionné comme étant l'élément actif.
Change
(onChange)
Se produit lorsque l'utilisateur modifie le contenu d'un champ de données.
Click
(onClick)
Se produit lorsque l'utilisateur clique sur l'élément associé à l'événement. Test

dblclick
(onDblclick)
Se produit lorsque l'utilisateur double-clique sur l'élément associé à l'événement (un lien hypertexte ou un élément de formulaire). Cet événement n'est supporté que par les versions de Javascript 1.2 et supérieures Test

dragdrop
(onDragdrop)
Se produit lorsque l'utilisateur effectue un glisser-déposer sur la fenêtre du navigateur.
Cet événement n'est supporté que par les versions de Javascript 1.2 et supérieures
   
error
(onError)
Se déclenche lorsqu'une erreur apparaît durant le chargement de la page.
Cet événement fait partie du Javascript 1.1.
   
Focus
(onFocus)
Se produit lorsque l'utilisateur donne le focus à un élément, c'est-à-dire que cet élément est sélectionné comme étant l'élément actif
keydown
(onKeydown)
Se produit lorsque l'utilisateur appuie sur une touche de son clavier.
Cet événement n'est supporté que par les versions de Javascript 1.2 et supérieures

keypress
(onKeypress)
Se produit lorsque l'utilisateur maintient une touche de son clavier enfoncée.
Cet événement n'est supporté que par les versions de Javascript 1.2 et supérieures

keyup
(onKeypress)
Se produit lorsque l'utilisateur relâche une touche de son clavier préalablement enfoncée.
Cet événement n'est supporté que par les versions de Javascript 1.2 et supérieures

Load
(onLoad)
Se produit lorsque le navigateur de l'utilisateur charge la page en cours    
MouseOver
(onMouseOver)
Se produit lorsque l'utilisateur positionne le curseur de la souris au-dessus d'un élément Test
MouseOut
(onMouseOut)
Se produit lorsque le curseur de la souris quitte un élément.
Cet événement fait partie du Javascript 1.1.
Test
Reset
(onReset)
Se produit lorsque l'utilisateur efface les données d'un formulaire à l'aide du bouton Reset.
Resize
(onResize)
Se produit lorsque l'utilisateur redimensionne la fenêtre du navigateur  
Select
(onSelect)
Se produit lorsque l'utilisateur sélectionne un texte (ou une partie d'un texte) dans un champ de type "text" ou "textarea"
Submit
(onSubmit)
Se produit lorsque l'utilisateur clique sur le bouton de soumission d'un formulaire (le bouton qui permet d'envoyer le formulaire)    
Unload
(onUnload)
Se produit lorsque le navigateur de l'utilisateur quitte la page en cours    

Association des événements aux objets

Chaque événement ne peut pas être associé à n'importe quel objet. Il est évident par exemple qu'un événement OnChange ne pourra pas s'appliquer à un lien hypertexte. Voici un tableau récapitulant les objets auxquels peuvent être associés chaque événement :

Evénements Objets concernés
abort Image
blur Button, Checkbox, FileUpload, Layer, Password, Radio, Reset, Select, Submit, Text, TextArea, window
change FileUpload, Select, Submit, Text, TextArea
click Button, document, Checkbox, Link, Radio, Reset, Select, Submit
dblclick document, Link
dragdrop window
error Image, window
focus Button, Checkbox, FileUpload, Layer, Password, Radio, Reset, Select, Submit, Text, TextArea, window
keydown document, Image, Link, TextArea
keypress document, Image, Link, TextArea
keyup document, Image, Link, TextArea
load Image, Layer, window
mousedown Button, document, Link
mousemove Aucun spécifiquement
mouseout Layer, Link
mouseover Area, Layer, Link
mouseup Button, document, Link
move window
reset form
resize window
select text, Textarea
submit Form
unload window

Quelques exemples d'événements

Le mieux pour apprendre à se servir des événements est de s'entraîner à écrire de petits codes...
Pour vous inspirer, pensez à regarder les fichiers sources de certaines pages web, mais pensez toujours à respecter les auteurs des codes en ne faisant pas un copier-coller de leurs scripts sans leur accord (il est généralement de bon ton de citer la source du javascript que l'on récupère...).

Ouverture d'une boîte de dialogue lors d'un click

Le code correspondant à une boîte de dialogue est très simple :

window.alert("Votre Texte"); 

Il s'agit désormais de l'appeler à l'aide d'un événement dans l'attribut « href » d'un lien hypertexte :

<html>
<head>
<title>Ouverture d'une boîte de dialogue lors d'un click</title>
</head>
<body>
 
<a href="javascript:;"
onClick="window.alert('Message d\'alerte à utiliser avec moderation');">
Cliquez ici!</a>
 
</body>
</html>

Analyse du script:

  • le gestionnaire d'événement onClick a été inséré dans la balise de lien hypertexte <A href...
  • le seul but du script est de faire apparaître une boîte de dialogue, ainsi on ne désire pas que le lien nous entraîne sur une autre page, il faut alors insérer "javascript:;" dans l'attribut href pour signaler au navigateur que l'on désire rester sur la page en cours. Il ne faut pas mettre un attribut vide au risque de révéler le contenu de votre répertoire à vos visiteurs...
  • Remarquez l'emploi de \' dans la phrase "Message d'alerte a utiliser avec moderation"
    Le signe antislash (\) précédant le guillemet permet de signaler au navigateur qu'il ne faut pas l'interpréter comme un délimiteur de chaîne mais comme un simple caractère pour éviter qu'il génère une erreur!

Aperçu de l'effet du script:
Cliquez ici!

Modification d'une image lors du survol d'un lien par le pointeur de la souris

Il peut être agréable de jouer avec le gestionnaire OnMouseOver pour créer un menu interactif qui se modifie au passage de la souris. On peut même ajouter le gestionnaire OnMouseOut pour rétablir l'image originale lorsque le curseur quitte l'image (Rappel: Son utilisation est limitée aux navigateurs supportant javascript 1.1 et supérieur!). Ce type d'effet est appelé rollover.

Script:
 

<html>
<head>
<title>Modification d'une image lors du passage de la souris</title>
</head>
<body>
 
<a href="javascript:;"
onMouseOver="document.img_1.src='image2.gif';"
onMouseOut="document.img_1.src='image1.gif';">
<img name="img_1" src="image1.gif"> </a>
 
</body>
</html>

Analyse du script:

  • Pour pouvoir associer un événement à une image il faut que celle-ci soit considérée comme un lien, ainsi on place la balise <img ...> entre les balises <a ...> et </a>
  • L'événement onMouseOut est limité aux navigateurs supportant javascript 1.1 et supérieur

Aperçu de l'effet du script:


Dernière modification le mardi 14 octobre 2008 à 17:40:36.

Ce document intitulé « Javascript - Les événements » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Javascript - Implantation du code A quel emplacement insérer le Javascript dans votre page HTML Il existe plusieurs façons d'inclure du JavaScript dans une page HTML : Grâce à la balise En mettant le code dans un fichier Grâce aux événements Dans la balise... www.commentcamarche.net/contents/javascript/jsimplant.php3
[JAVASCRIPT] Comment créer un select dynamiq? (Résolu) Bonjour à tous, Je suis en train de faire un script qui lors d'un événement de l'utilisateur créé dynamiquement deux select. Pour crééer les options des select j'ai un petit bou d'ajax qui me premet d'aller chercher des infos... www.commentcamarche.net/forum/affich-3541865-javascript-comment-creer-un-select-dynamiq
Code Javascript lié au passage de la souris ? (Résolu) Bonjour à tous, Jaimerais savoir comment coder en javascript pour que quand je passe ma souris sur une partie de texte ou une image il y ait une pseudo fenêtre qui s'ouvre et affiche certaines informations, comme il y a sur ce site. Quand vous... www.commentcamarche.net/forum/affich-4683628-code-javascript-lie-au-passage-de-la-souris
[Javascript] Date de dernière modification de la pageIl est possible, en langage Javascript, d'afficher la date de dernière modification de la page Web grâce à la propriété lastModified de l'objet document : www.commentcamarche.net/faq/sujet-883-javascript-date-de-derniere-modification-de-la-page
Javascript - Modifier la hauteur (height) d'un élément HTMLPour modifier la hauteur d'un élément HTML en javascript, il suffit d'utiliser sa propriété de style "height". Pour cela vous pouvez y faire référence de la manière suivante : Si vous souhaitez connaître la hauteur (height) d'un bloc HTML, il... www.commentcamarche.net/faq/sujet-11740-javascript-modifier-la-hauteur-height-d-un-element-html
Javascript - Connaître la hauteur d'un élément HTMLSi vous souhaitez connaître la hauteur (height) d'un bloc HTML en javascript, il existe deux façons selon les navigateurs : element.offsetHeight element.style.pixelHeight Ainsi, le code suivant permet d'obtenir la hauteur d'un bloc HTML... www.commentcamarche.net/faq/sujet-11739-javascript-connaitre-la-hauteur-d-un-element-html
Compatibilité avec javascript 1.1 (Résolu)salut, je suis entrain de développer un site internet et pour faire beau j'utilise CSS et javascript. les événements par exemple onmouseover et onmouseover sont disponibles depuis javascript 1.1, je veux alors verifier si la version du navigateur... www.commentcamarche.net/forum/affich-3295860-compatibilite-avec-javascript-1-1
[JS] Include sur le onload (Résolu)Bonjour à toutes et à tous, mon problème est un peu particulier. Je suis en train de mettre en place MS CRM3.0 chez un client, et dans la personnalisation demandée, je dois sur l'évènement onLoad de la page (event javascript généré dynamiquement... www.commentcamarche.net/forum/affich-3841780-js-include-sur-le-onload
This.form en html ou php (Résolu)Bonjour, je souhaiterais executer une fonction javascript qui prend comme parametre this.form Sur un evenement tous fonctionne correctement mais si je veux l'executer en html cela ne fonctionne pas car l'objet this.form n'est pas connu.... www.commentcamarche.net/forum/affich-7448825-this-form-en-html-ou-php
Télécharger JavaScript ObfuscatorJasob JavaScript Obfuscator est un logiciel de protection de code Javascript. Il intègre une interface simple. Il vous permet de convertir votre code Javascript en un code incompréhensible pour l’homme mais lisible pour le navigateur. Le logiciel... www.commentcamarche.net/telecharger/telecharger-34056889-javascript-obfuscator
Javascript - L'objet navigatorLes particularités de l'objet navigator L'objet navigator est un objet qui permet de récupérer des informations sur le navigateur qu'utilise le visiteur. Cela paraît totalement inutile à première vue, toutefois, comme vous le savez sûrement, il... www.commentcamarche.net/contents/javascript/jsnavigator.php3
Javascript - Introduction au langage JavascriptQu'est-ce que le Javascript? Le Javascript est un langage de script incorporé dans un document HTML. Historiquement il s'agit même du premier langage de script pour le Web. Ce langage est un langage de programmation qui permet d'apporter des... www.commentcamarche.net/contents/javascript/jsintro.php3
Javascript - Les variablesLe concept de variable Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. En Javascript, les noms de variables peuvent être aussi long que l'on désire,... www.commentcamarche.net/contents/javascript/jsvar.php3