aboutsummaryrefslogtreecommitdiffstats
path: root/src/traversing.js
diff options
context:
space:
mode:
authorRichard Gibson <richard.gibson@gmail.com>2013-04-20 11:40:27 -0400
committerRichard Gibson <richard.gibson@gmail.com>2013-04-20 11:49:44 -0400
commit4f786ba4d2a5544cb48f589d2659d6cab84efc34 (patch)
tree38da945198bae993d2d9d8527d2bf5107efc5ad9 /src/traversing.js
parent85b3c82445d9e88c6e747a33ad97f5f9e35a7d35 (diff)
downloadjquery-4f786ba4d2a5544cb48f589d2659d6cab84efc34.tar.gz
jquery-4f786ba4d2a5544cb48f589d2659d6cab84efc34.zip
Fix #13797: .is with single-node context
Diffstat (limited to 'src/traversing.js')
-rw-r--r--src/traversing.js18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/traversing.js b/src/traversing.js
index 4a274806e..a9c9c9796 100644
--- a/src/traversing.js
+++ b/src/traversing.js
@@ -58,14 +58,16 @@ jQuery.fn.extend({
},
is: function( selector ) {
- return !!selector && (
- typeof selector === "string" ?
- // If this is a positional/relative selector, check membership in the returned set
- // so $("p:first").is("p:last") won't return true for a doc with two "p".
- rneedsContext.test( selector ) ?
- jQuery( selector, this.context ).index( this[0] ) >= 0 :
- jQuery.filter( selector, this ).length > 0 :
- this.filter( selector ).length > 0 );
+ return !!winnow(
+ this,
+
+ // If this is a positional/relative selector, check membership in the returned set
+ // so $("p:first").is("p:last") won't return true for a doc with two "p".
+ typeof selector === "string" && rneedsContext.test( selector ) ?
+ jQuery( selector ) :
+ selector || [],
+ false
+ ).length;
},
closest: function( selectors, context ) {