From 09bfb5df0dd385bdf1f6b8bca7c29d3fd98b87c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rn=20Zaefferer?= Date: Sat, 30 Dec 2006 10:05:45 +0000 Subject: [PATCH] Removed documentation for oneXXX and unXXX methods (not yet implementation), added implementation for one() --- src/event/event.js | 842 +------------------------------------------ src/jquery/jquery.js | 33 ++ 2 files changed, 35 insertions(+), 840 deletions(-) diff --git a/src/event/event.js b/src/event/event.js index 852b3135..b8c856b9 100644 --- a/src/event/event.js +++ b/src/event/event.js @@ -186,48 +186,6 @@ new function(){ * @cat Events/Browser */ - /** - * Bind a function to the scroll event of each matched element, which will only be executed once. - * Unlike a call to the normal .scroll() method, calling .onescroll() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").onescroll( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first scroll - * - * @name onescroll - * @type jQuery - * @param Function fn A function to bind to the scroll event on each of the matched elements. - * @cat Events/Browser - */ - - /** - * Removes a bound scroll event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unscroll( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unscroll - * @type jQuery - * @param Function fn A function to unbind from the scroll event on each of the matched elements. - * @cat Events/Browser - */ - - /** - * Removes all bound scroll events from each of the matched elements. - * - * @example $("p").unscroll(); - * @before

Hello

- * @result

Hello

- * - * @name unscroll - * @type jQuery - * @cat Events/Browser - */ - /** * Bind a function to the submit event of each matched element. * @@ -258,48 +216,6 @@ new function(){ * @cat Events/Form */ - /** - * Bind a function to the submit event of each matched element, which will only be executed once. - * Unlike a call to the normal .submit() method, calling .onesubmit() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").onesubmit( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first submit - * - * @name onesubmit - * @type jQuery - * @param Function fn A function to bind to the submit event on each of the matched elements. - * @cat Events/Form - */ - - /** - * Removes a bound submit event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unsubmit( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unsubmit - * @type jQuery - * @param Function fn A function to unbind from the submit event on each of the matched elements. - * @cat Events/Form - */ - - /** - * Removes all bound submit events from each of the matched elements. - * - * @example $("p").unsubmit(); - * @before

Hello

- * @result

Hello

- * - * @name unsubmit - * @type jQuery - * @cat Events/Form - */ - /** * Bind a function to the focus event of each matched element. * @@ -329,48 +245,6 @@ new function(){ * @cat Events/UI */ - /** - * Bind a function to the focus event of each matched element, which will only be executed once. - * Unlike a call to the normal .focus() method, calling .onefocus() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").onefocus( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first focus - * - * @name onefocus - * @type jQuery - * @param Function fn A function to bind to the focus event on each of the matched elements. - * @cat Events/UI - */ - - /** - * Removes a bound focus event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unfocus( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unfocus - * @type jQuery - * @param Function fn A function to unbind from the focus event on each of the matched elements. - * @cat Events/UI - */ - - /** - * Removes all bound focus events from each of the matched elements. - * - * @example $("p").unfocus(); - * @before

Hello

- * @result

Hello

- * - * @name unfocus - * @type jQuery - * @cat Events/UI - */ - /** * Bind a function to the keydown event of each matched element. * @@ -397,48 +271,6 @@ new function(){ * @cat Events/Keyboard */ - /** - * Bind a function to the keydown event of each matched element, which will only be executed once. - * Unlike a call to the normal .keydown() method, calling .onekeydown() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").onekeydown( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first keydown - * - * @name onekeydown - * @type jQuery - * @param Function fn A function to bind to the keydown event on each of the matched elements. - * @cat Events/Keyboard - */ - - /** - * Removes a bound keydown event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unkeydown( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unkeydown - * @type jQuery - * @param Function fn A function to unbind from the keydown event on each of the matched elements. - * @cat Events/Keyboard - */ - - /** - * Removes all bound keydown events from each of the matched elements. - * - * @example $("p").unkeydown(); - * @before

Hello

- * @result

Hello

- * - * @name unkeydown - * @type jQuery - * @cat Events/Keyboard - */ - /** * Bind a function to the dblclick event of each matched element. * @@ -465,48 +297,6 @@ new function(){ * @cat Events/Mouse */ - /** - * Bind a function to the dblclick event of each matched element, which will only be executed once. - * Unlike a call to the normal .dblclick() method, calling .onedblclick() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").onedblclick( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first dblclick - * - * @name onedblclick - * @type jQuery - * @param Function fn A function to bind to the dblclick event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes a bound dblclick event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").undblclick( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name undblclick - * @type jQuery - * @param Function fn A function to unbind from the dblclick event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes all bound dblclick events from each of the matched elements. - * - * @example $("p").undblclick(); - * @before

Hello

- * @result

Hello

- * - * @name undblclick - * @type jQuery - * @cat Events/Mouse - */ - /** * Bind a function to the keypress event of each matched element. * @@ -533,48 +323,6 @@ new function(){ * @cat Events/Keyboard */ - /** - * Bind a function to the keypress event of each matched element, which will only be executed once. - * Unlike a call to the normal .keypress() method, calling .onekeypress() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").onekeypress( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first keypress - * - * @name onekeypress - * @type jQuery - * @param Function fn A function to bind to the keypress event on each of the matched elements. - * @cat Events/Keyboard - */ - - /** - * Removes a bound keypress event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unkeypress( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unkeypress - * @type jQuery - * @param Function fn A function to unbind from the keypress event on each of the matched elements. - * @cat Events/Keyboard - */ - - /** - * Removes all bound keypress events from each of the matched elements. - * - * @example $("p").unkeypress(); - * @before

Hello

- * @result

Hello

- * - * @name unkeypress - * @type jQuery - * @cat Events/Keyboard - */ - /** * Bind a function to the error event of each matched element. * @@ -601,48 +349,6 @@ new function(){ * @cat Events/Browser */ - /** - * Bind a function to the error event of each matched element, which will only be executed once. - * Unlike a call to the normal .error() method, calling .oneerror() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").oneerror( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first error - * - * @name oneerror - * @type jQuery - * @param Function fn A function to bind to the error event on each of the matched elements. - * @cat Events/Browser - */ - - /** - * Removes a bound error event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unerror( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unerror - * @type jQuery - * @param Function fn A function to unbind from the error event on each of the matched elements. - * @cat Events/Browser - */ - - /** - * Removes all bound error events from each of the matched elements. - * - * @example $("p").unerror(); - * @before

Hello

- * @result

Hello

- * - * @name unerror - * @type jQuery - * @cat Events/Browser - */ - /** * Bind a function to the blur event of each matched element. * @@ -672,48 +378,6 @@ new function(){ * @cat Events/UI */ - /** - * Bind a function to the blur event of each matched element, which will only be executed once. - * Unlike a call to the normal .blur() method, calling .oneblur() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").oneblur( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first blur - * - * @name oneblur - * @type jQuery - * @param Function fn A function to bind to the blur event on each of the matched elements. - * @cat Events/UI - */ - - /** - * Removes a bound blur event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unblur( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unblur - * @type jQuery - * @param Function fn A function to unbind from the blur event on each of the matched elements. - * @cat Events/UI - */ - - /** - * Removes all bound blur events from each of the matched elements. - * - * @example $("p").unblur(); - * @before

Hello

- * @result

Hello

- * - * @name unblur - * @type jQuery - * @cat Events/UI - */ - /** * Bind a function to the load event of each matched element. * @@ -744,48 +408,6 @@ new function(){ * @cat Events/Browser */ - /** - * Bind a function to the load event of each matched element, which will only be executed once. - * Unlike a call to the normal .load() method, calling .oneload() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").oneload( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first load - * - * @name oneload - * @type jQuery - * @param Function fn A function to bind to the load event on each of the matched elements. - * @cat Events/Browser - */ - - /** - * Removes a bound load event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unload( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unload - * @type jQuery - * @param Function fn A function to unbind from the load event on each of the matched elements. - * @cat Events/Browser - */ - - /** - * Removes all bound load events from each of the matched elements. - * - * @example $("p").unload(); - * @before

Hello

- * @result

Hello

- * - * @name unload - * @type jQuery - * @cat Events/Browser - */ - /** * Bind a function to the select event of each matched element. * @@ -812,48 +434,6 @@ new function(){ * @cat Events/Form */ - /** - * Bind a function to the select event of each matched element, which will only be executed once. - * Unlike a call to the normal .select() method, calling .oneselect() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").oneselect( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first select - * - * @name oneselect - * @type jQuery - * @param Function fn A function to bind to the select event on each of the matched elements. - * @cat Events/Form - */ - - /** - * Removes a bound select event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unselect( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unselect - * @type jQuery - * @param Function fn A function to unbind from the select event on each of the matched elements. - * @cat Events/Form - */ - - /** - * Removes all bound select events from each of the matched elements. - * - * @example $("p").unselect(); - * @before

Hello

- * @result

Hello

- * - * @name unselect - * @type jQuery - * @cat Events/Form - */ - /** * Bind a function to the mouseup event of each matched element. * @@ -880,48 +460,6 @@ new function(){ * @cat Events/Mouse */ - /** - * Bind a function to the mouseup event of each matched element, which will only be executed once. - * Unlike a call to the normal .mouseup() method, calling .onemouseup() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").onemouseup( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first mouseup - * - * @name onemouseup - * @type jQuery - * @param Function fn A function to bind to the mouseup event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes a bound mouseup event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unmouseup( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unmouseup - * @type jQuery - * @param Function fn A function to unbind from the mouseup event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes all bound mouseup events from each of the matched elements. - * - * @example $("p").unmouseup(); - * @before

Hello

- * @result

Hello

- * - * @name unmouseup - * @type jQuery - * @cat Events/Mouse - */ - /** * Bind a function to the unload event of each matched element. * @@ -948,48 +486,6 @@ new function(){ * @cat Events/Browser */ - /** - * Bind a function to the unload event of each matched element, which will only be executed once. - * Unlike a call to the normal .unload() method, calling .oneunload() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").oneunload( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first unload - * - * @name oneunload - * @type jQuery - * @param Function fn A function to bind to the unload event on each of the matched elements. - * @cat Events/Browser - */ - - /** - * Removes a bound unload event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").ununload( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name ununload - * @type jQuery - * @param Function fn A function to unbind from the unload event on each of the matched elements. - * @cat Events/Browser - */ - - /** - * Removes all bound unload events from each of the matched elements. - * - * @example $("p").ununload(); - * @before

Hello

- * @result

Hello

- * - * @name ununload - * @type jQuery - * @cat Events/Browser - */ - /** * Bind a function to the change event of each matched element. * @@ -1016,48 +512,6 @@ new function(){ * @cat Events/Form */ - /** - * Bind a function to the change event of each matched element, which will only be executed once. - * Unlike a call to the normal .change() method, calling .onechange() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").onechange( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first change - * - * @name onechange - * @type jQuery - * @param Function fn A function to bind to the change event on each of the matched elements. - * @cat Events/Form - */ - - /** - * Removes a bound change event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unchange( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unchange - * @type jQuery - * @param Function fn A function to unbind from the change event on each of the matched elements. - * @cat Events/Form - */ - - /** - * Removes all bound change events from each of the matched elements. - * - * @example $("p").unchange(); - * @before

Hello

- * @result

Hello

- * - * @name unchange - * @type jQuery - * @cat Events/Form - */ - /** * Bind a function to the mouseout event of each matched element. * @@ -1084,48 +538,6 @@ new function(){ * @cat Events/Mouse */ - /** - * Bind a function to the mouseout event of each matched element, which will only be executed once. - * Unlike a call to the normal .mouseout() method, calling .onemouseout() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").onemouseout( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first mouseout - * - * @name onemouseout - * @type jQuery - * @param Function fn A function to bind to the mouseout event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes a bound mouseout event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unmouseout( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unmouseout - * @type jQuery - * @param Function fn A function to unbind from the mouseout event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes all bound mouseout events from each of the matched elements. - * - * @example $("p").unmouseout(); - * @before

Hello

- * @result

Hello

- * - * @name unmouseout - * @type jQuery - * @cat Events/Mouse - */ - /** * Bind a function to the keyup event of each matched element. * @@ -1152,48 +564,6 @@ new function(){ * @cat Events/Keyboard */ - /** - * Bind a function to the keyup event of each matched element, which will only be executed once. - * Unlike a call to the normal .keyup() method, calling .onekeyup() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").onekeyup( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first keyup - * - * @name onekeyup - * @type jQuery - * @param Function fn A function to bind to the keyup event on each of the matched elements. - * @cat Events/Keyboard - */ - - /** - * Removes a bound keyup event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unkeyup( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unkeyup - * @type jQuery - * @param Function fn A function to unbind from the keyup event on each of the matched elements. - * @cat Events/Keyboard - */ - - /** - * Removes all bound keyup events from each of the matched elements. - * - * @example $("p").unkeyup(); - * @before

Hello

- * @result

Hello

- * - * @name unkeyup - * @type jQuery - * @cat Events/Keyboard - */ - /** * Bind a function to the click event of each matched element. * @@ -1220,48 +590,6 @@ new function(){ * @cat Events/Mouse */ - /** - * Bind a function to the click event of each matched element, which will only be executed once. - * Unlike a call to the normal .click() method, calling .oneclick() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").oneclick( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first click - * - * @name oneclick - * @type jQuery - * @param Function fn A function to bind to the click event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes a bound click event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unclick( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unclick - * @type jQuery - * @param Function fn A function to unbind from the click event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes all bound click events from each of the matched elements. - * - * @example $("p").unclick(); - * @before

Hello

- * @result

Hello

- * - * @name unclick - * @type jQuery - * @cat Events/Mouse - */ - /** * Bind a function to the resize event of each matched element. * @@ -1288,48 +616,6 @@ new function(){ * @cat Events/Browser */ - /** - * Bind a function to the resize event of each matched element, which will only be executed once. - * Unlike a call to the normal .resize() method, calling .oneresize() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").oneresize( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first resize - * - * @name oneresize - * @type jQuery - * @param Function fn A function to bind to the resize event on each of the matched elements. - * @cat Events/Browser - */ - - /** - * Removes a bound resize event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unresize( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unresize - * @type jQuery - * @param Function fn A function to unbind from the resize event on each of the matched elements. - * @cat Events/Browser - */ - - /** - * Removes all bound resize events from each of the matched elements. - * - * @example $("p").unresize(); - * @before

Hello

- * @result

Hello

- * - * @name unresize - * @type jQuery - * @cat Events/Browser - */ - /** * Bind a function to the mousemove event of each matched element. * @@ -1356,48 +642,6 @@ new function(){ * @cat Events/Mouse */ - /** - * Bind a function to the mousemove event of each matched element, which will only be executed once. - * Unlike a call to the normal .mousemove() method, calling .onemousemove() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").onemousemove( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first mousemove - * - * @name onemousemove - * @type jQuery - * @param Function fn A function to bind to the mousemove event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes a bound mousemove event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unmousemove( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unmousemove - * @type jQuery - * @param Function fn A function to unbind from the mousemove event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes all bound mousemove events from each of the matched elements. - * - * @example $("p").unmousemove(); - * @before

Hello

- * @result

Hello

- * - * @name unmousemove - * @type jQuery - * @cat Events/Mouse - */ - /** * Bind a function to the mousedown event of each matched element. * @@ -1423,48 +667,6 @@ new function(){ * @type jQuery * @cat Events/Mouse */ - - /** - * Bind a function to the mousedown event of each matched element, which will only be executed once. - * Unlike a call to the normal .mousedown() method, calling .onemousedown() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").onemousedown( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first mousedown - * - * @name onemousedown - * @type jQuery - * @param Function fn A function to bind to the mousedown event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes a bound mousedown event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unmousedown( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unmousedown - * @type jQuery - * @param Function fn A function to unbind from the mousedown event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes all bound mousedown events from each of the matched elements. - * - * @example $("p").unmousedown(); - * @before

Hello

- * @result

Hello

- * - * @name unmousedown - * @type jQuery - * @cat Events/Mouse - */ /** * Bind a function to the mouseover event of each matched element. @@ -1492,48 +694,6 @@ new function(){ * @cat Events/Mouse */ - /** - * Bind a function to the mouseover event of each matched element, which will only be executed once. - * Unlike a call to the normal .mouseover() method, calling .onemouseover() causes the bound function to be - * only executed the first time it is triggered, and never again (unless it is re-bound). - * - * @example $("p").onemouseover( function() { alert("Hello"); } ); - * @before

Hello

- * @result alert('Hello'); // Only executed for the first mouseover - * - * @name onemouseover - * @type jQuery - * @param Function fn A function to bind to the mouseover event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes a bound mouseover event from each of the matched - * elements. You must pass the identical function that was used in the original - * bind method. - * - * @example $("p").unmouseover( myFunction ); - * @before

Hello

- * @result

Hello

- * - * @name unmouseover - * @type jQuery - * @param Function fn A function to unbind from the mouseover event on each of the matched elements. - * @cat Events/Mouse - */ - - /** - * Removes all bound mouseover events from each of the matched elements. - * - * @example $("p").unmouseover(); - * @before

Hello

- * @result

Hello

- * - * @name unmouseover - * @type jQuery - * @cat Events/Mouse - */ - var e = ("blur,focus,load,resize,scroll,unload,click,dblclick," + "mousedown,mouseup,mousemove,mouseover,mouseout,change,select," + "submit,keydown,keypress,keyup,error").split(","); @@ -1550,9 +710,11 @@ new function(){ }; // Handle event unbinding + // TODO remove jQuery.fn["un"+o] = function(f){ return this.unbind(o, f); }; // Finally, handle events that only fire once + // TODO remove jQuery.fn["one"+o] = function(f){ // save cloned reference to this var element = jQuery(this); diff --git a/src/jquery/jquery.js b/src/jquery/jquery.js index f802ae6a..62010e27 100644 --- a/src/jquery/jquery.js +++ b/src/jquery/jquery.js @@ -3230,6 +3230,39 @@ jQuery.macros = { bind: function( type, data, fn ) { jQuery.event.add( this, type, fn || data, data ); }, + + /** + * Binds a handler to a particular event (like click) for each matched element. + * The handler is executed only once for each element. Otherwise, the same rules + * as described in bind() apply. + The event handler is passed an event object that you can use to prevent + * default behaviour. To stop both default action and event bubbling, your handler + * has to return false. + * + * In most cases, you can define your event handlers as anonymous functions + * (see first example). In cases where that is not possible, you can pass additional + * data as the second paramter (and the handler function as the third), see + * second example. + * + * @example $("p").one( "click", function() { + * alert( $(this).text() ); + * } ) + * @before

Hello

+ * @result alert("Hello") + * + * @name one + * @type jQuery + * @param String type An event type + * @param Object data (optional) Additional data passed to the event handler as event.data + * @param Function fn A function to bind to the event on each of the set of matched elements + * @cat Events + */ + one: function( type, data, fn ) { + jQuery.event.add( this, type, function(event) { + jQuery(this).unbind(event); + return (fn || data).apply( this, arguments); + }, data); + }, /** * The opposite of bind, removes a bound event from each of the matched