效果:

思路:

首先,获得用到的ID,在把得到的<li>数组添加到array数组里面,然后在进行array排序,排序完后再将array中的数据用appendChild添加到ul里面;

代码:

 <head runat="server">
<title></title>
<style type="text/css">
ul li
{
background-color: #00FFFF;
}
</style>
<script type="text/javascript">
window.onload = function () {
var oBtn = document.getElementById('btn');
var oUl1 = document.getElementById('ul1');
var oLiAll = oUl1.getElementsByTagName('li');
var array = [];
oBtn.onclick = function () {
for (var i = 0; i < oLiAll.length; i++) { //把未排序前的li挨个添加到array里面
array[i] = oLiAll[i];
}
array.sort(function (n1, n2) { //排序array
var num1 = n1.innerHTML;
var num2 = n2.innerHTML;
return num1 - num2;
});
for (var j = 0; j < array.length; j++) { //把排序好的array挨个添加到ul里面
oUl1.appendChild(array[j]);
}
}
};
</script>
</head>
<body>
<ul id="ul1" style="width: 200px;">
<li>6</li>
<li>2</li>
<li>9</li>
<li>3</li>
<li>5</li>
<li>1</li>
<li>11</li>
<li>85</li>
<li>7</li>
<li>10</li>
</ul>
<input type="button" id="btn" value="排序" />
</body>

点滴积累【JS】---JS小功能(JS实现排序)的更多相关文章

  1. JS类小功能

    工作中,总是要处理一些前端的小功能.都是网上搜的JS脚本 <script> //防止页面后退 history.pushState(null, null, document.URL); wi ...

  2. js实现小功能 动态赋值

  3. 常用小功能js函数-函数防抖

    函数防抖:在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时.这个我经常用到/** * 函数防抖 * fun 需要延时执行的函数 * delayTime 延时时间 * **/export ...

  4. js/jq 小功能函数

    1.点击复制内容到剪贴板 function copyToClip(str) { var save = function(e) { e.clipboardData.setData('text/plain ...

  5. js实现小时钟,js中Date对象的使用?

    介绍一下js中Date对象的使用 dateObj = new Date() dateObj = new Date(dateValue) dateObj = new Date(year,month,da ...

  6. js小功能整理

    /** * 判断是否包含字符串某字符串 * @param {[type]} str [被检测的字符串] * @param {[type]} substr [检测是否含有的字符串] * @return ...

  7. js小功能记录

    个人日常中遇到的js小功能记录,方便查看. /** * 判断是否包含字符串某字符串 * @param {[type]} str [被检测的字符串] * @param {[type]} substr [ ...

  8. js模仿微信语音播放的小功能

    自己写的一个模仿微信语音播放的小功能,实现的主要功能是:点击播放,点击暂停,播放切换,,,  代码如下: <!DOCTYPE html> <html lang="en&qu ...

  9. 网站开发---js与java实现的一些小功能

    记录一下网站开发过程中的一些小功能 1.js获取当前年份: <span>Copyright © 2017-<script>document.write( new Date(). ...

  10. Vue小功能-视频播放之video.js

        最近在练手一个小项目,想给首页增加一个视频介绍(如下图).涉及到了vue视频播放的功能,所以在网上了解了一下.     相关的插件是Video.js,官网讲解比较详细,我罗列出来,可以根据自己 ...

随机推荐

  1. vs code 使用Git进行源代码管理

    第一步:用vs code 打开一个空文件夹,如本示例Demo2, 第二步:点击左侧第三个图标“源代码管理”,然后再点击初始化存储库按钮 初始化之后界面现变成下图所示: 此时文件夹中会新增一个隐藏文件夹 ...

  2. redis_常见问题

    一.使用shutdown关闭服务后,使用redis-server.redis-server redis.conf.redis-cli均提示无法连接,运行命令services.msc,启动redis服务 ...

  3. 第七章Openwrt安装服务器环境php+uhttpd+mysql

    在前面的文章中刷openwrt.配置网络环境.挂载u盘都配置成功了之后,下面的操作就变得简单起来!!!! 1. putty连接到路由器 2. 安装php opkg install php5-fastc ...

  4. 二十四种设计模式:抽象工厂模式(Abstract Factory Pattern)

    抽象工厂模式(Abstract Factory Pattern) 介绍提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类. 示例有Message和MessageModel,Messag ...

  5. 【文件监控】之一:理解 ReadDirectoryChangesW part1

    理解 ReadDirectoryChangesW 原作者:Jim Beveridge 原文:http://qualapps.blogspot.com/2010/05/understanding-rea ...

  6. arithmetic-slices

    https://leetcode.com/problems/arithmetic-slices/ public class Solution { public int numberOfArithmet ...

  7. 黑马程序员_7K月薪面试题之_交通灯管理系统

    ----------- android培训.java培训.java学习型技术博客.期待与您交流! --------- 1,交通灯管理系统的项目需求 模拟实现十字路口的交通灯管理系统逻辑,具体需求如下: ...

  8. ubuntu 的runlevel设定

    修改ubuntu的启动级别 runlevel ----------------------------------------------------------------------------- ...

  9. 一个故事讲清NIO

    假设某银行只有10个职员.该银行的业务流程分为以下4个步骤: 1) 顾客填申请表(5分钟): 2) 职员审核(1分钟): 3) 职员叫保安去金库取钱(3分钟): 4) 职员打印票据,并将钱和票据返回给 ...

  10. Set 遍历的三种方法

    1.迭代遍历:Set<String> set = new HashSet<String>();Iterator<String> it = set.iterator( ...