tho*_*mad 6 javascript jquery iterator next
使用next()(每次应用相同的函数)迭代x次的简单方法是什么?
我在Sharepoint工作,对HTML的控制有限; 我所能做的就是找到了其ID的元素,追查最近<td>,hide()它,然后继续前进到下一个(我不希望所有<td>的,只是约7或8连胜).
下面的代码有效,但不是很漂亮.
$("#my-easily-identifiable-id").closest("td").hide();
$("#my-easily-identifiable-id").closest("td").next().hide();
$("#my-easily-identifiable-id").closest("td").next().next().hide();
$("#my-easily-identifiable-id").closest("td").next().next().next().hide();
[ ... etc ... ]
Run Code Online (Sandbox Code Playgroud)
有什么更好的方法呢?
谢谢
PS:添加小提琴(天才)
使用.nextAll()+ .andSelf()带.slice().
$("#my-easily-identifiable-id").closest("td").nextAll().andSelf().slice(0, 7);
Run Code Online (Sandbox Code Playgroud)
我认为比目前发布的解决方案更简单的解决方案是.nextUntil():
//to get next 8 elements
var i = $('#my-easily-identifiable-id').index();
$('#my-easily-identifiable-id').closest('td').nextUntil('', ':lt(' + (i+8) + ')');
//to get self and next 3
var i = $('#my-easily-identifiable-id').index();
$('#my-easily-identifiable-id').closest('td').nextUntil('', ':lt(' + (i+3) + ')').andSelf();
Run Code Online (Sandbox Code Playgroud)
抓住所有"下一个"元素,直到过滤器被击中(在这种情况下,我们选择接下来的8个元素).由jsFiddle验证.
| 归档时间: |
|
| 查看次数: |
2955 次 |
| 最近记录: |