+/**
+ * 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
* @cat DOM/Attributes
*/
-/**
- * Displays each of the set of matched elements if they are hidden.
- *
- * @example $("p").show()
- * @before <p style="display: none">Hello</p>
- * @result [ <p style="display: block">Hello</p> ]
- *
- * @name show
- * @type jQuery
- * @cat Effects
- */
-
-/**
- * Hides each of the set of matched elements if they are shown.
- *
- * @example $("p").hide()
- * @before <p>Hello</p>
- * @result [ <p style="display: none">Hello</p> ]
- *
- * var pass = true, div = $("div");
- * div.hide().each(function(){
- * if ( this.style.display != "none" ) pass = false;
- * });
- * ok( pass, "Hide" );
- *
- * @name hide
- * @type jQuery
- * @cat Effects
- */
-
-/**
- * Toggles each of the set of matched elements. If they are shown,
- * toggle makes them hidden. If they are hidden, toggle
- * makes them shown.
- *
- * @example $("p").toggle()
- * @before <p>Hello</p><p style="display: none">Hello Again</p>
- * @result [ <p style="display: none">Hello</p>, <p style="display: block">Hello Again</p> ]
- *
- * @name toggle
- * @type jQuery
- * @cat Effects
- */
-
/**
* Adds the specified class to each of the set of matched elements.
*
jQuery.attr( this, key, "" );
this.removeAttribute( key );
},
- show: function(){
- this.style.display = this.oldblock ? this.oldblock : "";
- if ( jQuery.css(this,"display") == "none" )
- this.style.display = "block";
- },
- hide: function(){
- this.oldblock = this.oldblock || jQuery.css(this,"display");
- if ( this.oldblock == "none" )
- this.oldblock = "block";
- this.style.display = "none";
- },
- toggle: function(){
- jQuery(this)[ jQuery(this).is(":hidden") ? "show" : "hide" ].apply( jQuery(this), arguments );
- },
addClass: function(c){
jQuery.className.add(this,c);
},