X-Git-Url: http://git.asbjorn.it/?a=blobdiff_plain;f=src%2Fjquery%2Fjquery.js;h=88930f227a4c6875b7eee5289617f57e90c2ea3b;hb=8937e088b6f06a0dbef36348aef5d7c10f3af340;hp=358c165469761c5603fa560b7b7393791c8c3ced;hpb=232da5dde03ae774980c9800950e60f3f4468c68;p=jquery.git diff --git a/src/jquery/jquery.js b/src/jquery/jquery.js index 358c165..88930f2 100644 --- a/src/jquery/jquery.js +++ b/src/jquery/jquery.js @@ -487,7 +487,27 @@ jQuery.fn = jQuery.prototype = { * @type String * @cat DOM */ + + /** + * Set the text contents of all matched elements. This has the same + * effect as calling .html() with your specified string. + * + * @example $("p").text("Some new text."); + * @before
Test Paragraph.
+ * @resultSome new text.
+ * + * @param String val The text value to set the contents of the element to. + * + * @name text + * @type String + * @cat DOM + */ text: function(e) { + // A surprisingly high number of people expect the + // .text() method to do this, so lets do it! + if ( typeof e == "string" ) + return this.html( e ); + e = e || this; var t = ""; for ( var j = 0; j < e.length; j++ ) { @@ -1215,28 +1235,21 @@ jQuery.extend({ }, className: { - add: function(o,c){ - if (jQuery.className.has(o,c)) return; - o.className += ( o.className ? " " : "" ) + c; + add: function( elem, c ){ + if ( jQuery.className.has( elem, c ) ) + return; + elem.className += ( elem.className ? " " : "" ) + c; }, - remove: function(o,c){ - if( !c ) { - o.className = ""; - } else { - var classes = o.className.split(" "); - for(var i=0; iHello
Hello AgainHello
] - * - * @name ancestors - * @type jQuery - * @cat DOM/Traversing - */ - - /** - * Get a set of elements containing the unique ancestors of the matched - * set of elements, and filtered by an expression. - * - * @example $("span").ancestors("p") - * @beforeHello
Hello AgainHello
] - * - * @name ancestors - * @type jQuery - * @param String expr An expression to filter the ancestors with - * @cat DOM/Traversing - */ - ancestors: jQuery.parents, - - /** - * Get a set of elements containing the unique ancestors of the matched - * set of elements (except for the root element). - * - * @example $("span").ancestors() + * @example $("span").parents() * @beforeHello
Hello AgainHello
] * @@ -2857,7 +2872,7 @@ jQuery.macros = { * Get a set of elements containing the unique ancestors of the matched * set of elements, and filtered by an expression. * - * @example $("span").ancestors("p") + * @example $("span").parents("p") * @beforeHello
Hello AgainHello
] * @@ -3083,15 +3098,19 @@ jQuery.macros = { }, /** - * Removes the specified class from the set of matched elements. + * Removes all or the specified class from the set of matched elements. * - * @example $("p").removeClass("selected") + * @example $("p").removeClass() * @beforeHello
* @result [Hello
] * + * @example $("p").removeClass("selected") + * @beforeHello
+ * @result [Hello
] + * * @name removeClass * @type jQuery - * @param String class A CSS class to remove from the elements + * @param String class (optional) A CSS class to remove from the elements * @cat DOM */ removeClass: function(c){ @@ -3169,12 +3188,24 @@ jQuery.macros = { * 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").bind( "click", function() { * alert( $(this).text() ); * } ) * @beforeHello
* @result alert("Hello") * + * @example var handler = function(event) { + * alert(event.data.foo); + * }; + * $("p").bind( "click", {foo: "bar"}, handler) + * @result alert("bar") + * @desc Pass some additional data to the event handler. + * * @example $("form").bind( "submit", function() { return false; } ) * @desc Cancel a default action and prevent it from bubbling by returning false * from your function. @@ -3193,11 +3224,12 @@ jQuery.macros = { * @name bind * @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 */ - bind: function( type, fn ) { - jQuery.event.add( this, type, fn ); + bind: function( type, data, fn ) { + jQuery.event.add( this, type, fn || data, data ); }, /** @@ -3263,4 +3295,4 @@ jQuery.macros = { } }; -jQuery.init(); +jQuery.init(); \ No newline at end of file