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]);
}
}
}