Javascript 如何使用jquery根据id属性对列表项进行排序?
您好,所以我有这个问题,我使用magento和我的我找不到一个地方如何切换我的标签的位置,所以我认为JQuery可以在手。这就是我举的一个例子Javascript 如何使用jquery根据id属性对列表项进行排序?,javascript,jquery,html,sorting,attributes,Javascript,Jquery,Html,Sorting,Attributes,您好,所以我有这个问题,我使用magento和我的我找不到一个地方如何切换我的标签的位置,所以我认为JQuery可以在手。这就是我举的一个例子 <li id="tab-4"> <li id="tab-3"> <li id="tab-2"> <li id="tab-1"> 我需要做到这一点 <li id="tab-1"> <li id="tab-2"> <li id="tab-3"> <li id
<li id="tab-4">
<li id="tab-3">
<li id="tab-2">
<li id="tab-1">
我需要做到这一点
<li id="tab-1">
<li id="tab-2">
<li id="tab-3">
<li id="tab-4">
有没有快速的方法?或者我必须一个接一个地做?我猜你周围有一个
ul=$('ul');//您的父ul元素
ul.children().each(函数{ul.prepend(li)})
- 4
- 3
- 2
- 1
我想你周围有一个
ul=$('ul');//您的父ul元素
ul.children().each(函数{ul.prepend(li)})
- 4
- 3
- 2
- 1
纯JS解决方案
var a=document.getElementsByTagName('li');
var b=document.getElementById('list');
var-arr=[];
Array.from(a.forEach)(v=>arr.push(v));
arr.reverse().forEach(v=>b.append(v))代码>
4
3
2
1
纯JS解决方案
var a=document.getElementsByTagName('li');
var b=document.getElementById('list');
var-arr=[];
Array.from(a.forEach)(v=>arr.push(v));
arr.reverse().forEach(v=>b.append(v))代码>
4
3
2
1
此外,对于解决方案工作(实际排序),无论初始顺序如何,您都可以使用sort()
和append
,如下所示:
$(“ul li”).sort(函数(a,b){
if(a.id.子串(4,5)
- 4
- 1
- 3
- 2
此外,对于解决方案工作(实际排序),无论初始顺序如何,您都可以使用sort()
和append
,如下所示:
$(“ul li”).sort(函数(a,b){
if(a.id.子串(4,5)
- 4
- 1
- 3
- 2
$(“.list>li”).detach().sort(函数(a,b){
返回+a.id.replace(“tab-”,“”)-b.id.replace(“tab-”,“”);
}).附录(“ul清单”)代码>
- 3
- 4
- 2
- 1
$(“.list>li”).detach().sort(函数(a,b){
返回+a.id.replace(“tab-”,“”)-b.id.replace(“tab-”,“”);
}).附录(“ul清单”)代码>
- 3
- 4
- 2
- 1
还有,您较慢的方法在哪里?您是在尝试更新生成此页面的magento代码,还是在magento已经呈现页面后,您正在查看或使用一个函数来执行此操作?我正在尝试在之后执行此操作,因为我使用的是Porto模板和自定义选项卡,我甚至找不到如何禁用默认选项卡。所以在页面之后切换会更容易load@PovilasJasilionis如果任何答案解决了您的问题,您应该将其标记为答案,以告知其他用户解决方案是什么,你较慢的方法在哪里?你是在尝试更新生成此页面的magento代码,还是在magento已经呈现页面后,你正在寻找或使用一个函数来执行此操作?我正在尝试这样做,因为我使用的是Porto模板和自定义选项卡,我甚至找不到如何禁用默认选项卡。所以在页面之后切换会更容易load@PovilasJasilionis如果有任何答案解决了您的问题,您应该将其标记为答案,以告知其他用户解决方案是什么,如果您将未使用的i
变量替换为\u
,效果会更好。如果您将未使用的i
替换,效果会更好带有的变量
。