首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jekyll -创建一个具有前沿数据的画廊

Jekyll -创建一个具有前沿数据的画廊
EN

Stack Overflow用户
提问于 2018-02-21 22:02:06
回答 1查看 115关注 0票数 0

我想要创建一个标签的“列表”,从我的帖子前端的数据,以使用一个灯箱插件。

因此,让我们说,我在我的邮政前部有以下事项:

代码语言:javascript
复制
gallery: true
images:
 - name: image-1.jpg
   alt: image-1
 - name: image-2.jpg
   alt: image-2
 - name: image-3.jpg
   alt: image-3

我想循环遍历这些数据并创建以下html:

代码语言:javascript
复制
<img id="thumb01" class="thumbnail" src="/assets/images/image-1.jpg" data-src="/assets/images/image-1.jpg" data-prev="thumb03" data-next="thumb02" alt="image-1">
<img id="thumb02" class="thumbnail" src="/assets/images/image-2.jpg" data-src="/assets/images/image-2.jpg" data-prev="thumb01" data-next="thumb03" alt="image-2">
<img id="thumb03" class="thumbnail" src="/assets/images/image-3.jpg" data-src="/assets/images/image-3.jpg" data-prev="thumb02" data-next="thumb01" alt="image-3">

我正在考虑在帖子布局中插入以下内容:

代码语言:javascript
复制
{% if page.gallery %}
some type of loop
{% endif %}

但我对如何做到这一点没有丝毫的线索,请帮帮忙!

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-22 09:37:59

试试这个:

代码语言:javascript
复制
{% if page.gallery == true %}
  {%- for img in page.images -%}

    {% comment %}
      If we have more than one image,
      we calculate next and prev index
    {% endcomment %}
    {% if forloop.length > 1 %}
      {% if forloop.first %}
        {% assign prev = forloop.length %}
      {% else %}
        {% assign prev = forloop.index | minus: 1 %}
      {% endif %}

      {% if forloop.last %}
        {% assign next = 1 %}
      {% else %}
        {% assign next = forloop.index | plus: 1 %}
      {% endif %}
    {% endif %}

<img id="thumb{{ forloop.index }}" class="thumbnail"
     src="{{ site.basurl }}/assets/images/{{ img.name }}"
     data-src="{{ site.basurl }}/assets/images/{{ img.name }}"
     {% comment %} only necessary if we have more than one image {% endcomment %}
     {%- if forloop.length > 1 -%}
     data-prev="thumb{{ prev }}"
     data-next="thumb{{ next }}"
     {%- endif %}
     alt="{{ img.alt }}" >

  {%- endfor -%}
{% endif %}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48916239

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档