利用jQuery对无序列表排序的简单方法


Posted in Javascript onOctober 16, 2016

利用jQuery对无序列表排序的原理是:获取到无序列表中的所有列表项,并转成数组形式,使用JavaScript函数对其进行排序后再次输出。其中使用到的jQuery函数有ready()、get()、text()、each()、append()和JavaScript函数sort()。

1.jQuery函数介绍

(1)jQuery函数get()--获取匹配元素集合

该函数取得所有匹配元素的一种向后兼容的方式(不同于jQuery对象,实际上是元素数组)。其语法形式如下:

object.get()

注:如果你想要直接操作DOM对象而不是jQuery对象,这个函数非常有用。

(2)jQuery函数text()--获取和设置元素内容

该函数获取和设置匹配元素的文本内容。其语法形式如下:

object.text([val|fn])

注:val和fn参数可选。val是设置元素的文本内容值;fn(index,text)函数返回一个字符串,接受两个参数,index为元素在集合中的索引位置,text为原先的text值。

(3)jQuery函数append()--向元素追加内容

该函数向每个匹配的元素内部追加内容。其语法形式如下:

object.append(content|fn)

注:这个操作与对指定的元素执行appendChild方法并将它们添加到文档中的情况类似。content参数表示追加的内容;fn(index,html)返回一个HTML字符串,用于追加到每一个匹配元素内部,接受两个参数,index参数为对象在这个集合中的索引值,html参数为这个对象原先的html值。

2.JavaScript函数介绍

JavaScript函数sort()--元素排序,用于对数组元素进行排序。其语法形式如下:

arrayObject.sort([sortby])

注:sortby可选,规定排列顺序,必须是函数。返回值为排序后的数组本身。如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序。说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。

如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数a和b,其返回值如下:若a小于b,在排序后的数组中a应该出现在b之前,则返回一个小于0的值。若a等于b,则返回0。若a大于b,则返回一个大于0的值。

3.功能实现

实现无序列表项排序功能的步骤如下。

(1)获取所有的列表项,并将其装入数组。

(2)对数组对象进行排序。

(3)将排好序的数组重新填充到无序列表中。

首先,把jQuery库引入进来:

<script language="JavaScript" src="jslib/jquery-1.6.js"></script>

然后,添加完整代码:

<script language="JavaScript" type="text/JavaScript"> 
 $(document).ready(function(){ 
  var items = $(".orderobj li").get();  //获取所有待排序li装入数组items 
  items.sort(function(a,b)        //调用JavaScript内置函数sort 
  { 
    var elementone = $(a).text(); 
    var elementtwo = $(b).text(); 
    if(elementone < elementtwo) return -1;  
    if(elementone > elementtwo) return 1; 
   return 0; 
 }); 
 
 var ul = $(".orderobj"); 
 $.each(items,function(i,li)    
        //通过遍历每一个数组元素,填充无序列表 
 { 
   ul.append(li); 
 }); 
 }); 
 </script>

以上代码通过数组排序并重新填充无序列表使得列表项有序。

利用jQuery对无序列表排序的简单方法 

具体效果如图4.11所示。

以上就是小编为大家带来的利用jQuery对无序列表排序的简单方法全部内容了,希望大家多多支持三水点靠木~

Javascript 相关文章推荐
通过JAVASCRIPT读取ASP设定的COOKIE
Feb 15 Javascript
jquery的颜色选择插件实例代码
Oct 02 Javascript
js调试工具 Javascript Debug Toolkit 2.0.0版本发布
Dec 02 Javascript
JS获得选取checkbox整行数据的方法
Jan 28 Javascript
javascript基础知识
Jun 07 Javascript
功能强大的jquery.validate表单验证插件
Nov 07 Javascript
node实现登录图片验证码的示例代码
Apr 20 Javascript
vue mint-ui tabbar变组件使用
May 04 Javascript
axios对请求各种异常情况处理的封装方法
Sep 25 Javascript
微信小程序导航栏滑动定位功能示例(实现CSS3的positionsticky效果)
Jan 24 Javascript
Vue如何实现监听组件原生事件
Jul 03 Javascript
javascript前端和后台进行数据交互方法示例
Aug 07 Javascript
JS实现动态增加和删除li标签行的实例代码
Oct 16 #Javascript
js利用appendChild对标签进行排序的实现方法
Oct 16 #Javascript
浅谈js控制li标签排序问题 js调用php函数的方法
Oct 16 #Javascript
JS实现禁止鼠标右键的功能
Oct 15 #Javascript
Vue.js快速入门实例教程
Oct 15 #Javascript
JavaScript随机生成颜色的方法
Oct 15 #Javascript
js实现目录链接,内容跟着目录滚动显示的简单实例
Oct 15 #Javascript
You might like
php调用mysql存储过程
2007/02/14 PHP
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安装配置方法
2007/05/03 PHP
PHP图片裁剪与缩放示例(无损裁剪图片)
2017/02/08 PHP
PHP基于Redis消息队列实现发布微博的方法
2017/05/03 PHP
支持汉转拼和拼音分词的PHP中文工具类ChineseUtil
2018/02/23 PHP
laravel利用中间件防止未登录用户直接访问后台的方法
2019/09/30 PHP
在Javascript中定义对象类别
2006/12/22 Javascript
静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。
2007/03/06 Javascript
Zero Clipboard js+swf实现的复制功能使用方法
2010/03/07 Javascript
js实现的仿新浪微博完美的时间组件升级版
2011/12/20 Javascript
jQuery学习笔记之jQuery.extend(),jQuery.fn.extend()分析
2014/06/09 Javascript
JS获取各种宽度、高度的简单介绍
2014/12/19 Javascript
jquery 根据name名获取元素的value值
2015/02/27 Javascript
学习JavaScript设计模式之模板方法模式
2016/01/20 Javascript
JS实现简单的二元方程计算器功能示例
2017/01/03 Javascript
详解js的异步编程技术的方法
2017/02/09 Javascript
微信小程序 本地数据读取实例
2017/04/27 Javascript
JavaScript基于对象方法实现数组去重及排序操作示例
2018/07/10 Javascript
微信小程序实现消息框弹出动画
2020/04/18 Javascript
微信小程序实现点击空白隐藏的方法示例
2019/08/13 Javascript
JavaScript async/await原理及实例解析
2020/12/02 Javascript
[28:42]Ti4正赛VG vs NEWBEE1
2014/07/19 DOTA
[36:05]完美世界DOTA2联赛循环赛 Forest vs DM 第一场 11.06
2020/11/06 DOTA
简单介绍Python中的len()函数的使用
2015/04/07 Python
Python内建数据结构详解
2016/02/03 Python
Python实现定时任务
2017/02/08 Python
解决python运行启动报错问题
2020/06/01 Python
Python高并发解决方案实现过程详解
2020/07/31 Python
python 解决pycharm运行py文件只有unittest选项的问题
2020/09/01 Python
利用Python实现自动扫雷小脚本
2020/12/17 Python
英国著名音像制品和图书游戏购物网站:Zavvi
2016/08/04 全球购物
英国排名第一的宠物店:PetPlanet
2020/02/02 全球购物
自荐信模版
2013/10/24 职场文书
应届毕业生自我鉴定范文
2013/12/27 职场文书
普罗米修斯教学反思
2014/02/06 职场文书
公司新人试用期自我评价
2014/09/17 职场文书