javascript 使用Jquery的Bootstrap 4动态轮播

isr3a4wc  于 2023-01-19  发布在  Java
关注(0)|答案(2)|浏览(154)

我尝试动态添加图像到Bootstrap Carousel,但它只是在列表中显示它们(https://i.imgur.com/8lOOg3w.jpg)。
这些图像是国家公园服务API URL(https://www.nps.gov/common/uploads/structured_data/3C86AAE7-1DD8-B71B-0BA8BC5E5E895E98.jpg)。
这是HTML

<div id="carousel" class="carousel slide" data-ride="carousel">
    <!-- Indicators -->
    <ol class="carousel-indicators"></ol>
    <!-- Wrapper for slides -->
    <div class="carousel-inner"></div>
    <!-- Controls -->
        <a class="carousel-control-prev" href="#demo" data-slide="prev">
        <span class="carousel-control-prev-icon"></span>
        </a>
    <a class="carousel-control-next" href="#demo" data-slide="next">
        <span class="carousel-control-next-icon"></span>
    </a>
</div>

和JS

$(document).ready(function(){
for(let j = 0; j < parkInfo.data[i].images.length; j++) {
  $('<div class="item"><img src="'+parkInfo.data[i].images[j].url+'" width="50%">   </div>').appendTo('.carousel-inner');
  $('<li data-target="#carousel" data-slide-to="'+j+'"></li>').appendTo('.carousel-indicators')

}
  $('.item').first().addClass('active');
  $('.carousel-indicators > li').first().addClass('active');
  $('#carousel').carousel();
});
mefy6pfw

mefy6pfw1#

看起来你需要有一个关于“carousel-item”而不是“item”的类。
https://jsfiddle.net/orb9945u/

$(document).ready(function(){
    for(let j = 0; j < 5; j++) {
        $('<div class="carousel-item"><img 
          src="https://loremflickr.com/320/240" width="50%">   
          </div>').appendTo('.carousel-inner');
        $('<li data-target="#carousel" data-slide-to="'+j+'"> 
          </li>').appendTo('.carousel-indicators')

    }

    $('.carousel-item').first().addClass('active');
    $('.carousel-indicators > li').first().addClass('active');
    $('#carousel').carousel();
});
polhcujo

polhcujo2#

为我工作

for(let j = 0; j < data.length; j++) {
                   $('<div class="item"><img src="'+data[j].imageName+'"></div>').appendTo('.carousel-inner');
                   $('<li data-target="#carousel" data-slide-to="'+j+'"></li>').appendTo('.carousel-indicators');
              }
              $('.item').first().addClass('active');
              $('.carousel-indicators > li').first().addClass('active');
              $('#carousel').carousel();

相关问题