- var handlers = events[ type ];
-
- if ( this.specialAll[ type ] ) {
- this.specialAll[ type ].setup.call( elem, data, namespaces );
+ var handlers = events[ type ],
+ special = this.special[ type ] || {};
+
+ if ( special.add ) {
+ var modifiedHandler = special.add.call( elem, handler, data, namespaces );
+ if ( modifiedHandler && jQuery.isFunction( modifiedHandler ) ) {
+ modifiedHandler.guid = modifiedHandler.guid || handler.guid;
+ handler = modifiedHandler;
+ }