li排序

html

<ul id="ul1"> <li>9</li> <li>2</li> <li>7</li> <li>4</li> <li>11</li> </ul> <input type="button" value="排序" id="btn1" />

思路:
1,将li集合插入一个数组里
2,对数组进行排序
3,将排序后的数组appendChild那个ul里

说明:
appendChild的用法,见
http://www.cnblogs.com/huaci/p/3823031.html

li集合,它并不等同于数组,所以也没有sort方法

js代码

window.onload = function(){ var oUl = document.getElementById("ul1"); var oBtn = document.getElementById("btn1"); oBtn.onclick = function(){ var arr = []; for(var i=0; i<oUl.children.length; i++){ arr.push(oUl.children[i]); } arr.sort(function(li1,li2){ var n1 = parseInt(li1.innerHTML); var n2 = parseInt(li2.innerHTML); return n1-n2; }); for(var i=0; i<arr.length; i++){ oUl.appendChild(arr[i]); } } }
原文地址:https://www.cnblogs.com/huaci/p/3823071.html