javascript 排序li

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<title>New Web Project</title>
		<script>
			window.οnlοad=function(){
				var oU1=document.getElementById('uAge1');
				var oU2=document.getElementById('uAge2');
				var oBtn=document.getElementById('btn');
				function sortNumber(l1,l2){
					var n1=parseInt(l1.innerHTML);
					var n2=parseInt(l2.innerHTML);
					return n1-n2;
				}
				
				oBtn.οnclick=function(){
					var oLis=oU1.children;
					var oAry=[];
					for(var j=0;j<oLis.length;j++)
					{
						oAry[j]=oLis[j];
					}
					oAry.sort(sortNumber);
					
					for(var i=0;i<oLis.length;i++)
					{
						
						oU1.appendChild(oAry[i]);
					}
				};
				
			};
		</script>
	</head>
	<body>
		<ul id="uAge1">
			<li>15</li>
			<li>66</li>
			<li>9</li>
			<li>10</li>
			<li>30</li>
		</ul>
		<input id="btn" type="button" value="排序" />
	</body>
</html>

注意事项:

1.appendChild()调用时,会有两步操作

  1. 首先从父级元素中删除本元素
  2. 将此元素添加到调用这个函数的父级
根据这两点,我们可以对元素集进行排序操作。

2.oU1.children获得元素集合跟 oU1.getElementsByTagName()获得的集合是等价的

3. sort()排序操作,是Array类型的数组独有的操作函数,集合不能使用,所以需要将获得的集合转换成数组才可以调用这个函数

运行结果如下图:


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值