在左边和右边有一个边框

时间:2014-08-20 15:40:47

标签: javascript jquery

我有动态生成的li,我希望左边的li和右边的li有边框。我在考虑为他们添加一个类。有类"隐藏"没有显示。列表可能是这样的

<li class="show">First</li>
<li class="hidden">Second</li>
<li class="hidden">Third</li>
<li class="show">Fourth</li>

或者

<li class="hidden">First</li>
<li class="hidden">Second</li>
<li class="show">Third</li>
<li class="show">Fourth</li>

无论它们是如何堆叠的,第一个列表应该在左边有一个边框,最后一个列表应该在右边有边框。

JSFIDDLE

2 个答案:

答案 0 :(得分:2)

使用:

$('ul').each(function() {
    $(this).find("li.show:first").addClass('first');
    $(this).find("li.show:last").addClass('last');
});

<强> Working Demo

答案 1 :(得分:1)

您还可以将边框半径放在ul上,而不是使用任何js

http://jsfiddle.net/403tLzn9/6/

.stackbar {
    border-top-right-radius: 5px !important;
    border-bottom-right-radius: 3px !important;
    border-top-left-radius: 5px !important;
    border-bottom-left-radius: 3px !important;
    background-color: #cD3e25;
    display: inline-block;
    padding: 0;
    margin: 0;
    overflow: hidden;
}

此外,您的js不起作用是因为您试图在li内找到li