2015-12-13 6 views
0

Я создаю слайдер для своего блога, и я хочу добавить в него набор элементов с высокой четкостью. Ползунок требует, чтобы первый ребенок загружался с классом selected.Добавить класс к первому ребенку в цикле с использованием Middleman

Как я могу сделать что-то вроде if first child do thiselse do that

Вот то, что я до сих пор:

<ul class="cd-hero-slider"> 
    <% blog.articles.select {|a| a.data[:featured] }.each do |article| %> 
     <li class="selected" style="background-image: url('https://images.unsplash.com/photo-1447014421976-7fec21d26d86?ixlib=rb-0.3.5&q=80&fm=jpg&crop=entropy&s=c82e04e12daab5427f481731')"> 
     <div class="cd-full-width"> 
      <h2><%= link_to article.title, article %></h2> 
      <p><%= article.summary(250) %></p> 
      <%= link_to 'Read More', article, :class => 'cd-btn' %> 
     </div> 
     </li> 
    <% end %> 
    </ul> 

ответ

1

Использование each_with_index вместо каждого - это даст вам объект, но и позиции в массиве , в первую очередь 0:

<% blog.articles.select {|a| a.data[:featured] }.each_with_index do |article, index| %> 
    <% if index == 0 %> 
    <li>I'm the first!</li> 
    <% else %> 
    <li>Not the first</li> 
    <% end %> 
<% end %>