Javascript 多ul反向顺序
我是jquery新手,我有一个包含多个无序列表的页面。 我需要颠倒每个ul的顺序,我看到了这个答案 但它会将所有项目与所有列表混淆。 我试图更改代码以满足我的需要,但它没有达到我想要的效果,我可以访问每个ul的每个li,但我不知道如何颠倒li项目的顺序 我的代码:Javascript 多ul反向顺序,javascript,jquery,Javascript,Jquery,我是jquery新手,我有一个包含多个无序列表的页面。 我需要颠倒每个ul的顺序,我看到了这个答案 但它会将所有项目与所有列表混淆。 我试图更改代码以满足我的需要,但它没有达到我想要的效果,我可以访问每个ul的每个li,但我不知道如何颠倒li项目的顺序 我的代码: $(function() { ul = $('ul'); // your parent element ul.each(function(i,ul){ $(this).children().each(function
$(function() {
ul = $('ul'); // your parent element
ul.each(function(i,ul){
$(this).children().each(function (i,li) {
alert(i);/*i got to do something here*/
});
})
});
不经意间: 1.)选择要颠倒顺序的项目(例如,
$(“div.myitems”)
)
2.)对项目调用$.makeArray
,将其转换为真正的数组
3.)调用javascript.reverse()
方法反转数组
我从来没有这样做过,所以我不确定它是否会起作用,但它可能会给你一些想法来建立 这适用于您有多个
ul
的情况:
通过在其他元素之前或之后插入元素,可以很容易地在DOM中移动元素。当您在jQuery实例中获得一组元素时(例如,使用
$(…)
),您将获得一组静态元素,这些元素按照文档顺序匹配。因此,在这一点上反转它们只是在匹配集中循环并移动它们的问题:
var list = $("selector_for_the_list");
var items = list.children();
var index;
for (index = items.length - 1; index >= 0; --index) {
list.append(items[index]);
}
能否显示您当前的HTML以及您希望它如何结束……请将您的代码放在jsfiddle.net上,单击
✓代码>分数下方的符号=)这是一个非常简洁的解决方案。谢谢:)
$('ul').each(function(){
var ul = $(this);
ul.children().each(function(i, li){
ul.prepend(li)
});
});
var list = $("selector_for_the_list");
var items = list.children();
var index;
for (index = items.length - 1; index >= 0; --index) {
list.append(items[index]);
}