Skip to content

Instantly share code, notes, and snippets.

@danwrong
Created July 29, 2011 18:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save danwrong/1114468 to your computer and use it in GitHub Desktop.
Save danwrong/1114468 to your computer and use it in GitHub Desktop.
function delegate(rules) {
return function(e) {
var target = $(e.target), parent = null;
for (var selector in rules) {
if (target.is(selector) || ((parent = target.parents(selector)) && parent.length > 0)) {
return rules[selector].apply(this, [parent || target].concat($.makeArray(arguments)));
}
parent = null;
}
};
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment