test for #2070
[jquery.git] / src / core.js
index 7ac4ad7..1ec8de0 100644 (file)
@@ -353,7 +353,10 @@ jQuery.fn = jQuery.prototype = {
                                selector = jQuery.multiFilter( selector, this );
 
                return this.filter(function() {
-                       return jQuery.inArray( this, selector ) < 0;
+                       // check to see if the selector is array-like otherwise assume it is just a DOM element
+                       return ( selector.length && selector[selector.length - 1] !== undefined )
+                               ? jQuery.inArray( this, selector ) < 0
+                               : this != selector;
                });
        },
 
@@ -816,6 +819,12 @@ jQuery.extend({
                                "1" :
                                ret;
                }
+               // Opera sometimes will give the wrong display answer, this fixes it, see #2037
+               if ( jQuery.browser.opera && name == "display" ) {
+                       var save = elem.style.display;
+                       elem.style.display = "block";
+                       elem.style.display = save;
+               }
                
                // Make sure we're using the right name for getting the float value
                if ( name.match( /float/i ) )