Shopify Bootstrap 轮播
Shopify Bootstrap carousel
我正在为 shopify 开发 bootstrap 轮播,首先我遇到了问题,它们显示的图像数量是否正确。但在第二个指标点击指标后它不再有效
<div id="carousel" class="carousel slide">
<!-- Indicators -->
<ol class="carousel-indicators">
{% for image in product.images %}
{% if forloop.first %}
<li data-target="#carousel" data-slide-to="0" class="active"></li>
{% else %}
<li data-target="#carousel" data-slide-to="1"></li>
{% endif %}
{% endfor %}
</ol>
<!-- Wrapper for slides -->
<div class="carousel-inner">
{% assign featured_image = product.selected_or_first_available_variant.featured_image | default: product.featured_image %}
<div class="item active">
<img src="{{ featured_image | img_url: 'master' }}" class="img-responsive" alt="{{ product.title }}" width="100%" />
</div>
{% if count_images > 0 %}
{% for image in product.images offset:1 %}
<div class="item">
<img src="{{ image | product_img_url: 'master' }}" class="img-responsive" alt="{{ product.title }}" width="100%" style="min;height: 115px !important;" />
</div>
{% endfor %}
</div>
{% endif %}
<!-- Controls -->
<a class="left carousel-control" href="#carousel" data-slide="prev">
<span class="fa fa-arrow-left"></span>
</a>
<a class="right carousel-control" href="#carousel" data-slide="next">
<span class="fa fa-arrow-right"></span>
</a>
</div>
您的代码有几个问题。首先是您所有的后续指标都针对您的第二张图片。
第二个是特色图片通常是第一张图片,但不能保证所以你需要测试你的图片是否是特色图片。
尝试:
<div id="carousel" class="carousel slide">
{% assign featured_image = product.selected_or_first_available_variant.featured_image | default: product.featured_image %}
<!-- Indicators -->
<ol class="carousel-indicators">
{% for image in product.images %}
{% assign activeClass = '' %}
{% if featured_image.id == image.id %} {% assign activeClass = 'active' %}{% endif %}
<li data-target="#carousel" data-slide-to="{{forloop.index0}}" class="{{activeClass}}"></li>
{% endfor %}
</ol>
<!-- Wrapper for slides -->
<div class="carousel-inner">
{% for image in product.images %}
{% assign activeClass = '' %}
{% if featured_image.id == image.id %} {% assign activeClass = 'active' %}{% endif %}
<div class="item {{activeClass}}">
<img src="{{ image | img_url }}" class="img-responsive" alt="{{ product.title }}" style="min-height: 115px !important;" />
</div>
{% endfor %}
</div>
<!-- Controls -->
<a class="left carousel-control" href="#carousel" data-slide="prev">
<span class="fa fa-arrow-left"></span>
</a>
<a class="right carousel-control" href="#carousel" data-slide="next">
<span class="fa fa-arrow-right"></span>
</a>
</div>
我正在为 shopify 开发 bootstrap 轮播,首先我遇到了问题,它们显示的图像数量是否正确。但在第二个指标点击指标后它不再有效
<div id="carousel" class="carousel slide">
<!-- Indicators -->
<ol class="carousel-indicators">
{% for image in product.images %}
{% if forloop.first %}
<li data-target="#carousel" data-slide-to="0" class="active"></li>
{% else %}
<li data-target="#carousel" data-slide-to="1"></li>
{% endif %}
{% endfor %}
</ol>
<!-- Wrapper for slides -->
<div class="carousel-inner">
{% assign featured_image = product.selected_or_first_available_variant.featured_image | default: product.featured_image %}
<div class="item active">
<img src="{{ featured_image | img_url: 'master' }}" class="img-responsive" alt="{{ product.title }}" width="100%" />
</div>
{% if count_images > 0 %}
{% for image in product.images offset:1 %}
<div class="item">
<img src="{{ image | product_img_url: 'master' }}" class="img-responsive" alt="{{ product.title }}" width="100%" style="min;height: 115px !important;" />
</div>
{% endfor %}
</div>
{% endif %}
<!-- Controls -->
<a class="left carousel-control" href="#carousel" data-slide="prev">
<span class="fa fa-arrow-left"></span>
</a>
<a class="right carousel-control" href="#carousel" data-slide="next">
<span class="fa fa-arrow-right"></span>
</a>
</div>
您的代码有几个问题。首先是您所有的后续指标都针对您的第二张图片。 第二个是特色图片通常是第一张图片,但不能保证所以你需要测试你的图片是否是特色图片。
尝试:
<div id="carousel" class="carousel slide">
{% assign featured_image = product.selected_or_first_available_variant.featured_image | default: product.featured_image %}
<!-- Indicators -->
<ol class="carousel-indicators">
{% for image in product.images %}
{% assign activeClass = '' %}
{% if featured_image.id == image.id %} {% assign activeClass = 'active' %}{% endif %}
<li data-target="#carousel" data-slide-to="{{forloop.index0}}" class="{{activeClass}}"></li>
{% endfor %}
</ol>
<!-- Wrapper for slides -->
<div class="carousel-inner">
{% for image in product.images %}
{% assign activeClass = '' %}
{% if featured_image.id == image.id %} {% assign activeClass = 'active' %}{% endif %}
<div class="item {{activeClass}}">
<img src="{{ image | img_url }}" class="img-responsive" alt="{{ product.title }}" style="min-height: 115px !important;" />
</div>
{% endfor %}
</div>
<!-- Controls -->
<a class="left carousel-control" href="#carousel" data-slide="prev">
<span class="fa fa-arrow-left"></span>
</a>
<a class="right carousel-control" href="#carousel" data-slide="next">
<span class="fa fa-arrow-right"></span>
</a>
</div>