From 6a3d1a1e281a5d13bca1ea388ae2bd8ce513ffb2 Mon Sep 17 00:00:00 2001 From: John Resig Date: Wed, 31 Dec 2008 19:21:24 +0000 Subject: [PATCH] Fixed an issue with .not("#foo, bar") not working correctly, closes #3757. --- src/core.js | 2 +- test/unit/core.js | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/core.js b/src/core.js index b5de145..92a6bd4 100644 --- a/src/core.js +++ b/src/core.js @@ -24,7 +24,7 @@ var jQuery = window.jQuery = window.$ = function( selector, context ) { var quickExpr = /^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/, // Is it a simple selector - isSimple = /^.[^:#\[\.]*$/, + isSimple = /^.[^:#\[\.,]*$/, // Will speed up references to undefined, and allows munging its name. undefined; diff --git a/test/unit/core.js b/test/unit/core.js index 1f0850c..71bfc81 100644 --- a/test/unit/core.js +++ b/test/unit/core.js @@ -1345,7 +1345,7 @@ test("closest()", function() { }); test("not()", function() { - expect(8); + expect(11); equals( jQuery("#main > p#ap > a").not("#google").length, 2, "not('selector')" ); equals( jQuery("#main > p#ap > a").not(document.getElementById("google")).length, 2, "not(DOMElement)" ); isSet( jQuery("p").not(".result").get(), q("firstp", "ap", "sndp", "en", "sap", "first"), "not('.class')" ); @@ -1356,6 +1356,10 @@ test("not()", function() { var selects = jQuery("#form select"); isSet( selects.not( selects[1] ), q("select1", "select3"), "filter out DOM element"); + + isSet( jQuery('#ap *').not('code'), q("google", "groups", "anchor1", "mark"), "not('tag selector')" ); + isSet( jQuery('#ap *').not('code, #mark'), q("google", "groups", "anchor1"), "not('tag, ID selector')" ); + isSet( jQuery('#ap *').not('#mark, code'), q("google", "groups", "anchor1"), "not('ID, tag selector')"); }); test("andSelf()", function() { -- 1.7.10.4