 
                     if (not target.is(".#{ o.opts.holder.klass }") and not target.is("##{ wrapperId }")) and
                         (target.parents(".#{ o.opts.holder.klass }").length is 0 and target.parents("##{ wrapperId }").length is 0)
-                            o.dropdownWrapper.trigger("hide.#{ pluginName }") 
+                            # trigger the custom event named hide on the dropdownWrapper element
+                            o.dropdownWrapper.trigger "hide.#{ pluginName }"
 
             # bind resize event to the window
             o.browserWindow.on o.resizeKey, o.resize

                                .removeClass o.opts.holder.hoverClass

                            o.opts.dropdownAnimation.onAfterHide(_this) if $.isFunction(o.opts.dropdownAnimation.onAfterHide)

            # delegate events for non-touch devices
            unless Modernizr.touch

                        # trigger the afterDecompress callback
                        o.opts.onAfterDecompress(_this) if $.isFunction(o.opts.onAfterDecompress)

            # bind custom event named show to open or show the dropdown
            o.dropdownWrapper.on "show.#{ pluginName }", ->
                o.opts.dropdownAnimation.onBeforeShow(_this) if $.isFunction(o.opts.dropdownAnimation.onBeforeShow)

                ($ this)
                    .stop(true, true)
                    .fadeIn
                        duration: o.opts.dropdownAnimation.showDuration
