added missing semicolons
[jquery.git] / src / traversing.js
index 583a303..b5a5a2d 100644 (file)
@@ -6,18 +6,21 @@ var winnow = function( elements, qualifier, keep ) {
        } else if( qualifier.nodeType ) {
                return jQuery.grep(elements, function(elem, i) {
                        return (elem === qualifier) === keep;
-               })
+               });
        } else if( typeof qualifier === "string" ) {
-               var filtered = jQuery.grep(elements, function(elem) { return elem.nodeType === 1 });
+               var filtered = jQuery.grep(elements, function(elem) { return elem.nodeType === 1; });
 
-               if(isSimple.test( qualifier )) return jQuery.filter(qualifier, filtered, !keep);
-               else qualifier = jQuery.filter( qualifier, elements );
+               if(isSimple.test( qualifier )) {
+                       return jQuery.filter(qualifier, filtered, !keep);
+               } else {
+                       qualifier = jQuery.filter( qualifier, elements );
+               }
        }
 
        return jQuery.grep(elements, function(elem, i) {
                return (jQuery.inArray( elem, qualifier ) >= 0) === keep;
        });
-}
+};
 
 jQuery.fn.extend({
        find: function( selector ) {
@@ -52,25 +55,27 @@ jQuery.fn.extend({
        },
 
        closest: function( selector, context ) {
-               var pos = jQuery.expr.match.POS.test( selector ) ? jQuery(selector) : null,
-                       closer = 0;
+               var pos = jQuery.expr.match.POS.test( selector ) ? 
+                       jQuery( selector, context || this.context ) : null;
 
                return this.map(function(){
-                       var cur = this;
+                       var cur = this, closer = 0;
                        while ( cur && cur.ownerDocument && cur !== context ) {
                                if ( pos ? pos.index(cur) > -1 : jQuery(cur).is(selector) ) {
-                                       jQuery.data(cur, "closest", closer);
+                                       jQuery.lastCloser = closer;
                                        return cur;
                                }
                                cur = cur.parentNode;
                                closer++;
                        }
+                       jQuery.lastCloser = -1;
+                       return null;
                });
        },
 
-       add: function( selector ) {
+       add: function( selector, context ) {
                var set = typeof selector === "string" ?
-                               jQuery( selector ) :
+                               jQuery( selector, context || this.context ) :
                                jQuery.makeArray( selector ),
                        all = jQuery.merge( this.get(), set );
 
@@ -185,4 +190,4 @@ jQuery.extend({
 
                return r;
        }
-});
\ No newline at end of file
+});