// ( event ) dispatched jQuery.Event
var handleObj = types.handleObj;
jQuery( types.delegateTarget ).off(
- handleObj.namespace? handleObj.type + "." + handleObj.namespace : handleObj.type,
+ handleObj.namespace ? handleObj.origType + "." + handleObj.namespace : handleObj.origType,
handleObj.selector,
handleObj.handler
);
});
test("special bind/delegate name mapping", function() {
- expect( 6 );
+ expect( 7 );
jQuery.event.special.slap = {
bindType: "click",
delegateType: "click",
handle: function( event ) {
equal( event.handleObj.origType, "gutfeeling", "got a gutfeeling" );
+ // Need to call the handler since .one() uses it to unbind
+ return event.handleObj.handler.call( this , event );
}
};
.trigger( "gutfeeling" )
.remove();
+ // Ensure .one() events are removed after their maiden voyage
+ jQuery( '<p>Gut Feeling</p>' )
+ .one( "gutfeeling", jQuery.noop )
+ .trigger( "gutfeeling" ) // This one should
+ .trigger( "gutfeeling" ) // This one should not
+ .remove();
+
delete jQuery.event.special.gutfeeling;
});