Comment utiliser l'objet document de l'événement de javascript pour programmer avec html

La Document Edécharger objet est unique en ce qu'il vous permet de créer d'autres événements en javascript. Vous utilisez le createEvent () méthode pour créer un événement qui pourrait simuler quelque chose comme un clic de souris. Même si cet objet fournit une seule méthode, il est une méthode puissante. La seule façon de vraiment comprendre cet objet particulier est de le voir en action. L'exemple suivant effectue trois tâches:

  • Fournit un moyen de générer un clic simulée

  • Ajoute un gestionnaire d'événement qui empêche l'action par défaut de simuler le clic

  • Supprime le gestionnaire d'événement qui empêche l'action par défaut de simuler le clic




Ceci est un exemple un peu avancé, mais il est également le code incroyablement utile parce que vous pouvez utiliser pour ajouter à vos applications d'automatisation qui se révéleront utiles aux utilisateurs les moins qualifiés.

fonctionner SimulateClick () {// Création de la event.var ClickEvent = document.createEvent ("MouseEvents») - // Configurer le event.ClickEvent.initMouseEvent ("click", // typetrue de l'événement, // pouvez utiliser la technique de la bulle? true, // cet événement est annulable? fenêtre, // Voir, devrait toujours être window.0, // Nombre de clicks.0 de la souris, écran // X coordinate0, // écran Y coordinate0, // Client X coordinate0, / ? / client Y coordinatefalse, // Ctrl enfoncée fausse clé, // Alt touche enfoncée faux, // Maj touche enfoncée faux, // Meta touche enfoncée 0, // Nombre de bouton clicked.null) -??? // connexes cible // obtenir une référence à l'object.var TestCheck = document.getElementById ("chkTest") - // Effectue le clic et enregistrer si le clic // a été annulée par un autre handler.var Réussi = TestCheck.dispatchEvent (ClickEvent) - // Affiche le résultat de la simulation onscreen.if (Réussi) {alert ("Le déclic a réussi!») -} else {alert ("Le déclic a été annulé!") -}}

Le code commence par l'obtention d'une référence à l'objet de l'événement cible, qui est MouseEvents dans ce cas. La initMouseEvent () fonction prend une foule d'arguments - qui sont nécessaires pour rendre le travail exemple. Vérifiez ici pour en savoir plus sur des arguments.

Après le code crée un événement, il est temps pour obtenir une référence à la commande qui va utiliser l'événement. Dans ce cas, l'exemple utilise une case à cocher nommée chkTest. Pour émettre l'événement, les appels d'application dispatchEvent () avec l'événement, ClickEvent, comme argument.

Cet acte incendies (questions) de l'événement. La valeur de retour détermine si l'événement a réussi. Lorsque vous utilisez l'auditeur et gestionnaire par défaut, la case à cocher est soit activé ou désactivé, en fonction de son état précédent.

Le code se termine par la détermination du statut de retour Réussi. Si rien ne l'empêche de réussir l'événement, Réussi est vrai, et le premier alert () affichages à l'écran. Sinon, vous voyez la deuxième alert () message. Bien sûr, la question est maintenant comment prévenir l'action par défaut de se produire. Le code suivant effectue cette tâche:

fonction preventDefault (event) {// Empêcher la action.event.preventDefault par défaut () -} function AddHandler () {// Obtenir un objet reference.var TestCheck = document.getElementById ("chkTest") - // Ajouter le gestionnaire d'événement .TestCheck.addEventListener ("click", // Type d'eventPreventDefault, // Nom de la listener.false de l'événement) - // Utilisez la technique de capture} function RemoveHandler () {// Obtenir un objet reference.var TestCheck = document? .getElementById ("chkTest") - // Ajouter l'événement handler.TestCheck.removeEventListener ("click", // Type d'eventPreventDefault, // Nom de la listener.false de l'événement) -? // Utilisez la technique de capture}

Quand le PreventDefault () fonction est active, il accepte une Evénement opposer comme entrée. Ce gestionnaire d'événements arrête automatiquement l'action par défaut de se produire en appelant preventDefault (). La case à cocher est pas sélectionnée, et Réussi est réglé sur faux lorsque ceci se produit.

Cependant, le PreventDefault () fonction est désactivée dès le départ. Pour le rendre actif, les appels d'application AddHandler (), qui ajoute un écouteur d'événement à l'aide de la addEventListener () fonctionner à la case à cocher, chkTest. Cette approche vous permet de déterminer si le navigateur peut utiliser la technique de capture pour travailler avec plusieurs gestionnaires d'événements. Pour supprimer le gestionnaire d'événements, les appels d'application RemoveHandler (), qui inverse le processus en appelant removeEventListener ().


» » » » Comment utiliser l'objet document de l'événement de javascript pour programmer avec html