fix :hidden selector that was accidentally reverted in previous commit, also fixed...
[jquery.git] / src / selector.js
index 2fa8e5d..b404064 100644 (file)
@@ -8,7 +8,8 @@
 
 var chunker = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,
        done = 0,
-       toString = Object.prototype.toString;
+       toString = Object.prototype.toString,
+       hasDuplicate = false;
 
 var Sizzle = function(selector, context, results, seed) {
        results = results || [];
@@ -760,6 +761,7 @@ if ( document.documentElement.compareDocumentPosition ) {
        }
 
        root.removeChild( form );
+       root = form = null; // release memory in IE
 })();
 
 (function(){
@@ -800,6 +802,8 @@ if ( document.documentElement.compareDocumentPosition ) {
                        return elem.getAttribute("href", 2);
                };
        }
+
+       div = null; // release memory in IE
 })();
 
 if ( document.querySelectorAll ) (function(){
@@ -829,6 +833,8 @@ if ( document.querySelectorAll ) (function(){
        for ( var prop in oldSizzle ) {
                Sizzle[ prop ] = oldSizzle[ prop ];
        }
+
+       div = null; // release memory in IE
 })();
 
 if ( document.getElementsByClassName && document.documentElement.getElementsByClassName ) (function(){
@@ -851,6 +857,8 @@ if ( document.getElementsByClassName && document.documentElement.getElementsByCl
                        return context.getElementsByClassName(match[1]);
                }
        };
+
+       div = null; // release memory in IE
 })();
 
 function dirNodeCheck( dir, cur, doneName, checkSet, nodeCheck, isXML ) {
@@ -969,7 +977,7 @@ jQuery.expr = Sizzle.selectors;
 jQuery.expr[":"] = jQuery.expr.filters;
 
 Sizzle.selectors.filters.hidden = function(elem){
-       return elem.offsetWidth === 0 || elem.offsetHeight === 0;
+       return elem.offsetWidth === 0 && elem.offsetHeight === 0;
 };
 
 Sizzle.selectors.filters.visible = function(elem){