Maison  >  Article  >  interface Web  >  Introduction et utilisation de EventUtil.addHandler

Introduction et utilisation de EventUtil.addHandler

零下一度
零下一度original
2017-07-18 17:49:442443parcourir

Méthode addHandler

Son accusation est que la méthode de niveau DOM0, la méthode de niveau DOM2 ou la méthode IE est utilisée pour ajouter des événements. Cette méthode appartient à un objet nommé EventUtil, qui peut être utilisé pour gérer les différences entre les navigateurs. La méthode addHandler() accepte 3 paramètres : l'élément sur lequel opérer, le nom de l'heure et la fonction du gestionnaire d'événements.

La méthode correspondante à la méthode addHandler() est removeHandler(), qui accepte également les mêmes paramètres. Le but de cette méthode est de supprimer le gestionnaire d'événements précédemment ajouté, quelle que soit la manière dont le gestionnaire d'événements a été ajouté à l'élément. Si d'autres méthodes ne sont pas valides, la méthode DOM niveau 0 est utilisée par défaut.

La méthode correspondant à la méthode addHandler() est removeHandler(), qui accepte également les mêmes paramètres. Le but de cette méthode est de supprimer le gestionnaire d'événements précédemment ajouté, quelle que soit la manière dont le gestionnaire d'événements a été ajouté à l'élément. Si d'autres méthodes ne sont pas valides, la méthode DOM niveau 0 est utilisée par défaut.

//EventUtilvar EventUtil = {

            addHandler: function (element, type, handler) {if (element.addEventListener) {        //DOM2级
                    element.addEventListener(type, handler, false);

                } else if (element.attachEvent) {      //DOM1级
                    element.attachEvent("on" + type, handler);

                } else {
                    element["on" + type] = handler;    //DOM0级
                }
            },

            removeHandler: function (element, type, handler) {   //类似addHandlerif (element.removeEventListener) {
                    element.removeEventListener(type, handler, false);

                } else if (element.detachEvent) {
                    element.detachEvent("on" + type, handler);

                } else {
                    element["on" + type] = null;

                }
            }

        }var btn1 = document.getElementById("myBtn1");var handler = function () {
            alert("hello handler");
        }

        EventUtil.addHandler(btn1, "click", handler);

Utilisation :

La méthode vérifie d'abord la méthode du niveau DOM2. Si la méthode du niveau DOM2 existe, utilisez cette méthode : passer l'événement. type, gestionnaire d'événements et le troisième paramètre false (indiquant la phase de bouillonnement).

S'il existe une méthode IE, adoptez la deuxième option. (Notez que pour fonctionner dans IE8 et les versions antérieures, le type d'événement à ce moment doit être préfixé par "on" .)

La dernière possibilité est d'utiliser la méthode de niveau DOM0 . À ce stade, nous utilisons la syntaxe entre crochets pour spécifier le nom de la propriété comme gestionnaire d'événement , ou pour définir l'événement sur null.


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn