-/**
- * Describes the nature of the event.
- *
- * Native by all browsers.
- *
- * @example $("a").click(function(event) {
- * alert(event.type);
- * });
- * @result "click"
- *
- * @property
- * @name event.type
- * @type String
- * @cat Events
- */
-
-/**
- * Contains the DOM element that issued the event. This can be
- * the element that registered for the event or a child of it.
- *
- * Fixed where necessary (IE, Safari).
- *
- * Use to implement event delegation.
- *
- * @example $("a[@href=http://google.com]").click(function(event) {
- * alert(event.target.href);
- * });
- * @result "http://google.com"
- * @desc Alerts the href property of the target element.
- *
- * @example function handler(event) {
- * var target = $(event.target);
- * if( target.is("li") ) {
- * target.children().toggle();
- * }
- * }
- * $("ul").click(handler).find("li > ").hide();
- * @desc Implements a simple event delegation: The click handler is added
- * to an unordered list, and the children of it's li children are hidden.
- * Clicking one of the li children toggles (see toggle()) their children.
- *
- * @property
- * @name event.target
- * @type Element
- * @cat Events
- */
-
-/**
- * The pageX/Y property pair returns the mouse coordinates relative to the document.
- *
- * Fixed where necessary (IE).
- *
- * @example $("a").click(function(event) {
- * alert("Current mouse position: " + event.pageX + ", " + event.pageY );
- * });
- * @result "Current mouse position: 130, 640"
- *
- * @property
- * @name event.pageX/Y
- * @type String
- * @cat Events
- */
-
-/**
- * Stops the bubbling of an event, prohibiting other handlers to get to
- * handle that event.
- *
- * Fixed where necessary (IE).
- *
- * @example $("p").click(function(event){
- * event.stopPropagation();
- * // do something
- * });
- * @desc Prohibits other event handlers to be called.
- *
- * @name event.stopPropagation
- * @type undefined
- * @cat Events
- */
-
-/**
- * Prevents the browser from executing the default action.
- *
- * Fixed where necessary (IE).
- *
- * @example $("a").click(function(event){
- * event.preventDefault();
- * // do something
- * });
- * @desc Stops the browser from changing the page to the
- * href of any anchors.
- *
- * @name event.preventDefault
- * @type undefined
- * @cat Events
- */
-
/*
* A number of helper functions used for managing events.
* Many of the ideas behind this code orignated from
* and attaching a function to that. By using this method, your bound Function
* will be called the instant the DOM is ready to be read and manipulated,
* which is exactly what 99.99% of all Javascript code needs to run.
+ *
+ * There is one argument passed to the ready event handler: A reference to
+ * the jQuery function. You can name that argument whatever you like, and
+ * can therefore stick with the $ alias without risc of naming collisions.
*
* Please ensure you have no code in your <body> onload event handler,
* otherwise $(document).ready() may not fire.
*
* @example $(document).ready(function(){ Your code here... });
*
+ * @example jQuery(function($) {
+ * // Your code using failsafe $ alias here...
+ * });
+ * @desc Uses both the shortcut for $(document).ready() and the argument
+ * to write failsafe jQuery code using the $ alias, without relying on the
+ * global alias.
+ *
* @name ready
* @type jQuery
* @param Function fn The function to be executed when the DOM is ready.
* @cat Events
+ * @see $.noConflict()
+ * @see $(Function)
*/
ready: function(f) {
// If the DOM is already ready
if ( jQuery.isReady )
// Execute the function immediately
- f.apply( document );
+ f.apply( document, [jQuery] );
// Otherwise, remember the function for later
else {
// Add the function to the wait list
- jQuery.readyList.push( f );
+ jQuery.readyList.push( function() { return f.apply(this, [jQuery]) } );
}
return this;