Heim  >  Artikel  >  Web-Frontend  >  Einführung und Verwendung von EventUtil.addHandler

Einführung und Verwendung von EventUtil.addHandler

零下一度
零下一度Original
2017-07-18 17:49:442447Durchsuche

addHandler-Methode

Sein Vorwurf lautet, dass zum Hinzufügen von Ereignissen die DOM0-Level-Methode, DOM2-Level-Methode oder IE-Methode verwendet wird. Diese Methode gehört zu einem Objekt namens EventUtil, mit dem Unterschiede zwischen Browsern verarbeitet werden können. Die Methode addHandler() akzeptiert drei Parameter: das zu bearbeitende Element, den Zeitnamen und die Event-Handler-Funktion.

Die der addHandler()-Methode entsprechende Methode ist removeHandler(), die auch dieselben Parameter akzeptiert. Der Zweck dieser Methode besteht darin, den zuvor hinzugefügten Ereignishandler zu entfernen – unabhängig davon, wie der Ereignishandler dem Element hinzugefügt wurde. Wenn andere Methoden ungültig sind, wird standardmäßig die DOM-Level-0-Methode verwendet.

Die der addHandler()-Methode entsprechende Methode ist removeHandler(), die auch dieselben Parameter akzeptiert. Der Zweck dieser Methode besteht darin, den zuvor hinzugefügten Ereignishandler zu entfernen – unabhängig davon, wie der Ereignishandler dem Element hinzugefügt wurde. Wenn andere Methoden ungültig sind, wird standardmäßig die DOM-Level-0-Methode verwendet.

//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);

Verwendung:

Die Methode überprüft zunächst die DOM2-Ebenenmethode. Wenn die DOM2-Ebenenmethode vorhanden ist, verwenden Sie diese Methode: Übergeben Sie das Ereignis Typ, Ereignishandler und der dritte Parameter false (zeigt die Blasenphase an).

Wenn es eine IE-Methode gibt, übernehmen Sie die zweite Option. (Beachten Sie, dass für die Ausführung in IE8 und früheren Versionen dem Ereignistyp zu diesem Zeitpunkt „on“ vorangestellt werden muss.)

Die letzte Möglichkeit besteht darin, die DOM0-Level-Methode zu verwenden . An dieser Stelle verwenden wir die Klammersyntax , um den Eigenschaftsnamen als Ereignishandler anzugeben , oder um das Ereignis auf null zu setzen.


Das obige ist der detaillierte Inhalt vonEinführung und Verwendung von EventUtil.addHandler. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn