如何使DIV按顺序从数组中选择一个ID

时间:2017-01-09 15:01:56

标签: javascript jquery html css

我的代码几乎正常工作(它是一个滑块,如果用户增加滑块值可以创建更多div,或者如果它们向下移动则删除它们),我正在努力解决的问题是我需要每个ID新的div制作,从阵列中选择名称,我觉得这应该很容易,但我不能让它工作,我在这里找不到。

    $('#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 个答案:

答案 0 :(得分: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",而不只是一个。