2015-10-06 42 views
-4
if (e.keyCode == 40) { 
     // todo click down arrow 
     var g = $('ol.list-group > a').hasClass('activeSelect'); 
     if (g == false) { 
      $('a:not(.disable-li)').first().addClass('activeSelect'); 
     } 
     var b = $('a.activeSelect'); 
     b.removeClass('activeSelect'); 
     b.next('a:not(disable-li)').first().addClass('activeSelect'); 
    } 
+5

困难而不HTML回答,什么“不工作”是指在这种情况下。任何错误? – Popnoodles

+0

我怀疑你想'nextAll(...)。first()',但是作为popnoodles说... –

+0

next('a:not(.disable - li') – shemy

回答

1

你缺少类选择.

b.next('a:not(.disable-li)').first().addClass('activeSelect'); 

或者你可以尝试

b.nextUntil('a:not(.disable-li)').next().addClass('activeSelect'); 

因为下一个()总是会返回一个元素,即使你通过一些类名/单元身份。

或者像@TJ克罗德说,

b.nextAll('a:not(.disable-li)').first().addClass('activeSelect'); 
+0

几乎可以肯定* not *'nextUntil'。 –