1

我正在尝试object.each do |x|通过应用 .active 类来通过命令设置第一个元素输出的样式。我无法弄清楚 - 我该怎么做?

4

3 回答 3

4

使用each_with_index(). 为清楚起见,在下面的非 ERB 示例中显示。

['hello', 'world'].each_with_index do |item, index|
  if index == 0
    puts "This is the first item"
  end

  puts item
end

打印出来:

This is the first item
hello
world
于 2012-11-09T11:50:27.847 回答
1

这似乎很明显:

objects.first.css_options += ' .active'

然后以通常的方式遍历所有对象。

如果变化可能不同,例如您还希望将 css 选项应用于最后一个元素:

objects.zip(['active','','',...]).each do |obj,klass|
  obj.css_option += klass
  ...
end
于 2012-11-09T12:25:55.177 回答
0
[obj1, obj2].each_with_index do |item, index|
  item.css_option += ' .active' if index == 0
end
于 2012-11-09T13:08:06.900 回答