Updated the licensing information.
[jquery.git] / src / jquery / jquery.js
index 846c815..7a8a013 100644 (file)
@@ -2,8 +2,7 @@
  * jQuery - New Wave Javascript
  *
  * Copyright (c) 2006 John Resig (jquery.com)
- * Licensed under the MIT License:
- *   http://www.opensource.org/licenses/mit-license.php
+ * Dual licensed under the MIT and GPL licenses.
  *
  * $Date$
  * $Rev$
@@ -59,10 +58,12 @@ function jQuery(a,c) {
        */
 
        // Watch for when a jQuery object is passed as the selector
-       if ( a.jquery ) return a;
+       if ( a.jquery )
+               return $( jQuery.merge( a, [] ) );
 
        // Watch for when a jQuery object is passed at the context
-       if ( c && c.jquery ) return c.find(a);
+       if ( c && c.jquery )
+               return $( c ).find(a);
        
        // If the context is global, return a new object
        if ( window == this )
@@ -314,7 +315,7 @@ jQuery.fn = jQuery.prototype = {
                        // Look for the case where we're accessing a style value
                        jQuery[ type || "attr" ]( this[0], key );
        },
-       
+
        /**
         * Access a style property on the first matched element.
         * This method makes it easy to retreive a style property value
@@ -557,6 +558,12 @@ jQuery.fn = jQuery.prototype = {
                        return jQuery.find(t,a);
                }), arguments );
        },
+
+       clone: function(deep) {
+               return this.pushStack( jQuery.map( this, function(a){
+                       return a.cloneNode( deep != undefined ? deep : true );
+               }), arguments );
+       },
        
        /**
         * Removes all elements from the set of matched elements that do not 
@@ -847,7 +854,7 @@ jQuery.extend({
                });
        
                jQuery.each( jQuery.macros.css, function(i,n){
-                       jQuery.fn[ i ] = function(h) {
+                       jQuery.fn[ n ] = function(h) {
                                return h == undefined ?
                                        ( this.length ? jQuery.css( this[0], n ) : null ) :
                                        this.css( n, h );
@@ -1023,7 +1030,8 @@ jQuery.extend({
                        // Form elements
                        enabled: "!a.disabled",
                        disabled: "a.disabled",
-                       checked: "a.checked"
+                       checked: "a.checked",
+                       selected: "a.selected"
                },
                ".": "jQuery.className.has(a,m[2])",
                "@": {
@@ -2364,6 +2372,11 @@ jQuery.macros = {
        },
 
        each: {
+
+               removeAttr: function( key ) {
+                       this.removeAttribute( key );
+               },
+
                /**
                 * Displays each of the set of matched elements if they are hidden.
                 *