视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Jquery:lt(index)与:gt(index))选择器出现的问题解决
2020-11-27 20:19:10 责编:小采
文档


测试问题:

$(document).ready(function(){
 $("tr:gt(0):lt(2)").css("background-color","#B2E0FF");
});

gt()和lt()对调个位置,显示的结果就不一样!~
lt()放前面是我想要的结果,gt()在前面就坑了。
下面的代码来自w3cshool,本人项目jquery1.8.2.js也存在类似问题。
期待大神说明此事缘由。

<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript"> 
 
$(document).ready(function(){
 $("tr:gt(0):lt(2)").css("background-color","#B2E0FF");
});
</script> 
 
</head>
<body>
<h1>Welcome to My Web Page</h1>
 
<table>
<tr>
<th>Id</th>
<th>LastName</th>
 
<th>FirstName</th>
<th>Address</th>
<th>City</th>
</tr>
 
<tr>
<td>1</td>
<td>Adams</td>
<td>John</td>
<td>Oxford Street</td>
 
<td>London</td>
</tr>
 
<tr>
<td>2</td>
<td>Bush</td>
<td>George</td>
<td>Fifth Avenue</td>
<td>New York </td>
</tr>
 
<tr>
<td>3</td>
<td>Carter</td>
<td>Thomas</td>
<td>Changan Street</td>
<td>Beijing</td>
</tr>
 
<tr>
<td>4</td>
<td>Obama</td>
<td>Barack</td>
<td>Pennsylvania Avenue</td>
<td>Washington</td>
</tr>
 
</table>
 
</body>
</html>
 
</body>
</html>

:gt(n) 所有序号大于 n 的元素
:lt(n) 所有序号小于 n 的元素
:gt(0):lt(2) 表示1,2号元素
:lt(2):gt(0) 表示1号元素

是呀,:gt(0):lt(2)可以理解为0< index <= 2,:lt(2):gt(0)是 0< index < 2;jquery手册也没关于这个用法介绍啊。 这算bug吗?

a,b,c,d,e
:gt(0) 得到
b,c,d,e
:lt(2) 得到
b,c

选择器是一步一步向下筛选的,每一步的筛选都是在上一步的结果中进行的

a,b,c,d,e
:gt(0) 得到
b,c,d,e
:lt(2) 得到
b,c

选择器是一步一步向下筛选的,每一步的筛选都是在上一步的结果中进行的

下载本文
显示全文
专题