Don't use .getTagName(), use jQuerys .is() instead
Your custom .getTagName() fails on jQuery selectors with multiple or no elements. When you try to .wcfFadeIn() on an selector with no elements, a JavaScript error is the result. With an selector containing multiple elements, the effect won't be changed to highlight when the first element is e.g. an div. Never ever expect a single element inside an jQuery selector, that's the first thing the jQuery doc tells you. Simply use jQuerys .is() instead - it's much more flexible.
As I can see, WCF.getEffect() is a "protected method" and only used internally. If this is not the case just say it, I'll make it downward-compatible.