aboutsummaryrefslogtreecommitdiffstats
path: root/src/traversing.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/traversing.js')
-rw-r--r--src/traversing.js15
1 files changed, 5 insertions, 10 deletions
diff --git a/src/traversing.js b/src/traversing.js
index 321c25197..4c58ae0b8 100644
--- a/src/traversing.js
+++ b/src/traversing.js
@@ -48,12 +48,12 @@ jQuery.fn.extend({
},
has: function( target ) {
- var i = 0,
+ var i,
targets = jQuery( target, this ),
- l = targets.length;
+ len = targets.length;
return this.filter(function() {
- for ( ; i < l; i++ ) {
+ for ( i = 0; i < len; i++ ) {
if ( jQuery.contains( this, targets[i] ) ) {
return true;
}
@@ -92,17 +92,12 @@ jQuery.fn.extend({
for ( ; i < l; i++ ) {
cur = this[i];
- while ( cur ) {
+ while ( cur && cur.ownerDocument && cur !== context && cur.nodeType !== 11 ) {
if ( pos ? pos.index(cur) > -1 : jQuery.find.matchesSelector(cur, selectors) ) {
ret.push( cur );
break;
-
- } else {
- cur = cur.parentNode;
- if ( !cur || !cur.ownerDocument || cur === context || cur.nodeType === 11 ) {
- break;
- }
}
+ cur = cur.parentNode;
}
}