curr.length
하지 제로 cur.next().length = 0
까지이었다 : 여기
$("#system").live('keyup',function(e){
var curr = $('#system-drop').find('.active');
if(e.keyCode == 40 || e.charCode == 40){
if(curr.length){
$('.os.active').removeClass('active');
$(curr).next().addClass('active');
} else{
$('#system-drop div:first-child').addClass('active');
}
}
});
이 바이올린입니다 :
여기
<input id="system" value="" />
<div id="system-drop">
<div class="os active">Mac</div>
<div class="os">Windows</div>
<div class="os">Linux</div>
<div class="os">Other</div>
</div>
가 jQuery를 수 있습니다 : 여기
는 HTML입니다. 즉, 커서가 마지막 div에있을 때 cur.length는 여전히 1이지만
cur.next()
은 없습니다. 아래 그것은 작동해야처럼 조건을 변경
jsFiddle
here을 수정
,
var nextActive = $(curr).next();
$('.os.active').removeClass('active');
if(nextActive .length){
nextActive.addClass('active');
} else{
$('#system-drop div:first-child').addClass('active');
}
이러한 작은 세부 사항 : 감사 SKS – Maverick