Skip to content

Commit e1cb09d

Browse files
committed
Fix Ticket #6754 - bad .selector property after .find involving grouped selectors.
1 parent 6a0942c commit e1cb09d

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

src/core.js

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ jQuery.fn = jQuery.prototype = {
199199

200200
// Take an array of elements and push it onto the stack
201201
// (returning the new matched element set)
202-
pushStack: function( elems, name, selector ) {
202+
function( elems, name, selector ) {
203203
// Build a new jQuery matched element set
204204
var ret = jQuery();
205205

@@ -216,7 +216,19 @@ jQuery.fn = jQuery.prototype = {
216216
ret.context = this.context;
217217

218218
if ( name === "find" ) {
219-
ret.selector = this.selector + (this.selector ? " " : "") + selector;
219+
var combo1 = this.selector.indexOf(',')!=-1;
220+
var combo2 = selector.indexOf(',')!=-1;
221+
if (combo1 || combo2){
222+
var selectors = [];
223+
for ( var all1 = this.selector.split(/\s*,\s*/), i1 = 0, len1 = all1.length; i1 < len1; ++i1 ) {
224+
for ( var all2 = selector.split(/\s*,\s*/), i2 = 0, len2 = all2.length; i2 < len2; ++i2 ) {
225+
selectors[i1*len2+i2] = all1[i1]+" "+all2[i2];
226+
}
227+
}
228+
ret.selector = selectors.join(',');
229+
}else{
230+
ret.selector = this.selector + (this.selector ? " " : "") + selector;
231+
}
220232
} else if ( name ) {
221233
ret.selector = this.selector + "." + name + "(" + selector + ")";
222234
}

0 commit comments

Comments
 (0)