Created
November 5, 2019 21:13
-
-
Save luisenriquecorona/dce46ca78590fee335a703489ead20dc to your computer and use it in GitHub Desktop.
The first way to eliminate work repetition in functions is through lazy loading. Lazy loading means that no work is done until the information is necessary.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function addHandler(target, eventType, handler){ | |
//overwrite the existing function | |
if (target.addEventListener){ //DOM2 Events | |
addHandler = function(target, eventType, handler){ | |
target.addEventListener(eventType, handler, false); | |
}; | |
} else { //IE | |
addHandler = function(target, eventType, handler){ | |
target.attachEvent("on" + eventType, handler); | |
}; | |
} | |
//call the new function | |
addHandler(target, eventType, handler); | |
} | |
function removeHandler(target, eventType, handler){ | |
//overwrite the existing function | |
if (target.removeEventListener){ //DOM2 Events | |
removeHandler = function(target, eventType, handler){ | |
target.addEventListener(eventType, handler, false); | |
}; | |
} else { //IE | |
removeHandler = function(target, eventType, handler){ | |
target.detachEvent("on" + eventType, handler); | |
}; | |
} | |
//call the new function | |
removeHandler(target, eventType, handler); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment