* $(this).removeClass("selected");
* });
*
- * @test var count = 0;
- * var fn1 = function() { count++; }
- * var fn2 = function() { count--; }
- * var link = $('#mark');
- * link.click().toggle(fn1, fn2).click().click().click().click().click();
- * ok( count == 1, "Check for toggle(fn, fn)" );
- *
* @name toggle
* @type jQuery
* @param Function even The function to execute on every even click.
* otherwise $(document).ready() may not fire.
*
* You can have as many $(document).ready events on your page as you like.
+ * The functions are then executed in the order they were added.
*
* @example $(document).ready(function(){ Your code here... });
*
/**
* Bind a function to the submit event of each matched element.
*
- * @example $("p").submit( function() { alert("Hello"); } );
- * @before <p>Hello</p>
- * @result <p onsubmit="alert('Hello');">Hello</p>
+ * @example $("#myform").submit( function() {
+ * return $("input", this).val().length > 0;
+ * } );
+ * @before <form id="myform"><input /></form>
+ * @desc Prevents the form submission when the input has no value entered.
*
* @name submit
* @type jQuery
* Trigger the submit event of each matched element. This causes all of the functions
* that have been bound to thet submit event to be executed.
*
- * @example $("p").submit();
- * @before <p onsubmit="alert('Hello');">Hello</p>
- * @result alert('Hello');
+ * Note: This does not execute the submit method of the form element! If you need to
+ * submit the form via code, you have to use the DOM method, eg. $("form")[0].submit();
+ *
+ * @example $("form").submit();
+ * @desc Triggers all submit events registered for forms, but does not submit the form
*
* @name submit
* @type jQuery
* @type jQuery
* @cat Events/Mouse
*/
-
- /**
- * @test var count;
- * // ignore load
- * var e = ("blur,focus,resize,scroll,unload,click,dblclick," +
- * "mousedown,mouseup,mousemove,mouseover,mouseout,change,reset,select," +
- * "submit,keydown,keypress,keyup,error").split(",");
- * var handler1 = function(event) {
- * count++;
- * };
- * var handler2 = function(event) {
- * count++;
- * };
- * for( var i=0; i < e.length; i++) {
- * var event = e[i];
- * count = 0;
- * // bind handler
- * $(document)[event](handler1);
- * $(document)[event](handler2);
- * $(document)["one"+event](handler1);
- *
- * // call event two times
- * $(document)[event]();
- * $(document)[event]();
- *
- * // unbind events
- * $(document)["un"+event](handler1);
- * // call once more
- * $(document)[event]();
- *
- * // remove all handlers
- * $(document)["un"+event]();
- *
- * // call once more
- * $(document)[event]();
- *
- * // assert count
- * ok( count == 6, 'Checking event ' + event);
- * }
- *
- * @private
- * @name eventTesting
- * @cat Events
- */
var e = ("blur,focus,load,resize,scroll,unload,click,dblclick," +
"mousedown,mouseup,mousemove,mouseover,mouseout,change,reset,select," +
element.unbind(o, handler);
element = null;
// apply original handler with the same arguments
- f.apply(this, arguments);
+ return f.apply(this, arguments);
};
return this.bind(o, handler);
};