2017-01-09 1 views
0

내 코드가 거의 작동합니다 (사용자가 슬라이더 값을 높이면 div가 더 많이 생성 될 수있는 슬라이더 또는 다시 아래로 이동하면 해당 슬라이더 값이 삭제됩니다).), 내가 고민하고있는 문제는 배열에서 이름을 선택하면서 각각의 새 div를 ID로 지정해야한다는 것입니다. 쉽지는 않지만 쉽게 작동 할 수 있다고 생각합니다. 여기에서 찾을 수 없습니다.DIV가 배열에서 선택한 ID를 순서대로 정렬하도록하는 방법

$('#pos1').on('slide', function (ev) { 
     var positions = ["Bravo", "Charlie", "Delta", "Echo", "Foxtrot", "Golf", "Hotel", "India", "Juliett"]; 
     var positionValue = $('#pos1').val(); 
     var gridCount = $('.carousel-inner div').length; 
     var objToClone = $('.table-slide'); 

     if (gridCount < positionValue) { 
     for (var i = gridCount; i < positionValue; i++) $(objToClone).clone().removeClass('active').appendTo('.carousel-inner'); 

     } else { 

     for (var i = gridCount; i > positionValue; i--) 

      if ($('.carousel-inner div:last').hasClass('active')){ 
      $('.carousel-inner div:last').prev().addClass('active'); 


$("div:last-child", ".carousel-inner").remove(); 
     } else { 
     $("div:last-child", ".carousel-inner").remove(); 
     } 
    } 
}); 
+1

ID를 설정하려는 위치가 표시되지 않지만 위치 배열을 사용하려면 순서대로 .shift()를 사용할 수 있습니다. – Cruiser

답변

0

나는 내가 바로 당신의 의도를 얻는 경우에, 잘 모르겠지만,

for (var i = gridCount; i < positionValue; i++) { 
    $(objToClone).clone().removeClass('active').prop("id", positions[i]).appendTo('.carousel-inner'); 
} 

이것은, 그러나, (positionValue - gridCount)과 같은 길이로 배열을 요구하려고합니다.

또한 $('.table-slide')selects all elements of the class "table-slide"이 아니라 하나임에 유의하십시오.

+0

감사합니다. – Janus1991

관련 문제