Heim > Artikel > Web-Frontend > Einführung und Verwendung von EventUtil.addHandler
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!