Return correct index for no-arg index() calls. Fixes #10977. Closes gh-971

This commit is contained in:
MORGAN 2012-10-16 10:25:08 -04:00 committed by Rick Waldron
parent ed9e34482a
commit 4bb46f413a
2 changed files with 10 additions and 1 deletions

View File

@ -112,7 +112,7 @@ jQuery.fn.extend({
// No argument, return index in parent
if ( !elem ) {
return ( this[0] && this[0].parentNode ) ? this.prevAll().length : -1;
return ( this[0] && this[0].parentNode ) ? this.first().prevAll().length : -1;
}
// index in selector

View File

@ -651,3 +651,12 @@ test("eq('-1') #10616", function() {
equal( $divs.eq( "-1" ).length, 1, "The string '-1' returns a selection that has length 1" );
deepEqual( $divs.eq( "-1" ), $divs.eq( -1 ), "String and number -1 match" );
});
test("index(no arg) #10977", function() {
expect(1);
var $list = jQuery("<ul id='indextest'><li>THIS ONE</li><li class='one'>a</li><li class='two'>b</li><li class='three'>c</li></ul>");
jQuery("#qunit-fixture").append( $list );
strictEqual ( jQuery( "#indextest li:not(.one,.two)" ).index() , 0, "No Argument Index Check" );
$list.remove();
});