我有以下代码:
element = $compile('<pagination ...')($rootScope);
lis = function(){
return element.find('li');
}
var nextPageItem = lis().eq(-1);
var page2 = lis().eq(2).find('a').eq(0);
我不确定参数 -1 和 0 在上述上下文中是什么意思。
谁能解释一下?
从文档中:
.eq( 索引 ):
一个整数,指示元素从 0 开始的位置。
.eq( -index )
指示元素位置的整数,向后计数 从集合中的最后一个元素开始。
例如,您的 HTML 标记如下所示:
<ul>
<li>list item 1</li>
<li>list item 2</li>
<li>list item 3</li>
<li>list item 4</li>
<li>list item 5</li>
</ul>
当您使用:
$( "li" ).eq( 2 ).css( "background-color", "red" );
此调用的结果是列表项 3 的红色背景。请注意,eq()
是从零开始的索引。
另一方面,当您使用:
$( "li" ).eq( -2 ).css( "background-color", "blue" );
这将使您的列表项 4 变为蓝色,因为它距离集合末尾有两个。
小提琴演示