Permalink
Browse files

Use .one() when doing a .bind() with an "unload" event type (#1242)

  • Loading branch information...
1 parent ee31297 commit d85a22a70ead4a3a22bf1eebe05d08b498f70aa1 @brandonaaron brandonaaron committed May 31, 2007
Showing with 4 additions and 1 deletion.
  1. +4 −1 src/event/event.js
View
@@ -250,6 +250,9 @@ jQuery.fn.extend({
* data as the second parameter (and the handler function as the third), see
* second example.
*
+ * Calling bind with an event type of "unload" will automatically
+ * use the one method instead of bind to prevent memory leaks.
+ *
* @example $("p").bind("click", function(){
* alert( $(this).text() );
* });
@@ -286,7 +289,7 @@ jQuery.fn.extend({
* @cat Events
*/
bind: function( type, data, fn ) {
- return this.each(function(){
+ return type == "unload" ? this.one(type, data, fn) : this.each(function(){
jQuery.event.add( this, type, fn || data, fn && data );
});
},

0 comments on commit d85a22a

Please sign in to comment.