Skip to content

Instantly share code, notes, and snippets.

@kamlekar
Last active April 21, 2016 10:47
Show Gist options
  • Save kamlekar/66ab176d026a210af58b to your computer and use it in GitHub Desktop.
Save kamlekar/66ab176d026a210af58b to your computer and use it in GitHub Desktop.
var sb = (function () {
var eventObject = {};
document.body.addEventListener('click', function(e){
var el = e.target;
var parent = el.parentElement;
while(parent !== document.body){
for(var item in eventObject){
var elements = document.querySelectorAll(item);
for(var i = 0, ilen = elements.length; i < ilen; i++){
if(el === elements[i]){
eventObject[item].call(el, e);
return;
}
}
}
el = parent;
parent = el.parentElement;
}
}, false);
return {
on: function(event, selector, callback){
eventObject[selector] = callback;
return sb;
}
}
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment