Skip to content

Commit

Permalink
selector arg for on(evt, selector, fn) can be false
Browse files Browse the repository at this point in the history
Treat falsey values like null/undefined were treated: as if the argument
wasn't passed at all.
  • Loading branch information
mislav committed Oct 3, 2012
1 parent 2f723fa commit fc62527
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 4 deletions.
4 changes: 2 additions & 2 deletions src/event.js
Original file line number Diff line number Diff line change
Expand Up @@ -165,11 +165,11 @@
}

$.fn.on = function(event, selector, callback){
return selector == undefined || $.isFunction(selector) ?
return !selector || $.isFunction(selector) ?
this.bind(event, selector || callback) : this.delegate(selector, event, callback)
}
$.fn.off = function(event, selector, callback){
return selector == undefined || $.isFunction(selector) ?
return !selector || $.isFunction(selector) ?
this.unbind(event, selector || callback) : this.undelegate(selector, event, callback)
}

Expand Down
6 changes: 4 additions & 2 deletions test/event.html
Original file line number Diff line number Diff line change
Expand Up @@ -110,10 +110,12 @@ <h1>Zepto event tests</h1>
testOnWithNullSelector: function(t){
var log = []
this.el.on('click', null, function(){ log.push('a') }).
on('click', undefined, function(){ log.push('b') })
on('click', undefined, function(){ log.push('b') }).
on('click', false, function(){ log.push('c') }).
on('click', '', function(){ log.push('d') })

click(this.el)
t.assertEqual('a b', log.sort().join(' '))
t.assertEqual('a b c d', log.sort().join(' '))
},

testOffWithObject: function(t){
Expand Down

0 comments on commit fc62527

Please sign in to comment.