利用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 相关文章推荐
Ctrl+Enter提交内容信息
Jun 26 Javascript
JavaScript将相对地址转换为绝对地址示例代码
Jul 19 Javascript
JS获取IP、MAC和主机名的五种方法
Nov 14 Javascript
jQuery带箭头提示框tooltips插件集锦
Nov 17 Javascript
jQuery实现的Tab滑动选项卡及图片切换(多种效果)小结
Sep 14 Javascript
JavaScript中有关一个数组中最大值和最小值及它们的下表的输出的解决办法
Jul 01 Javascript
AngularJS 使用ng-repeat报错 [ngRepeat:dupes]
Jan 19 Javascript
xmlplus组件设计系列之分隔框(DividedBox)(8)
May 02 Javascript
用js将long型数据转换成date型或datetime型的实例
Jul 03 Javascript
详解Axios 如何取消已发送的请求
Oct 20 Javascript
layui form表单提交之后重新加载数据表格的方法
Sep 11 Javascript
layui 解决form表单点击无反应的问题
Oct 25 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
最小化数据传输――在客户端存储数据
2006/10/09 PHP
一些常用的php函数
2006/12/06 PHP
php miniBB中文乱码问题解决方法
2008/11/25 PHP
php 数据库字段复用的基本原理与示例
2011/07/22 PHP
php判断正常访问和外部访问的示例
2014/02/10 PHP
destoon公司主页模板风格的添加方法
2014/06/20 PHP
基于PHP-FPM进程池探秘
2017/10/17 PHP
Laravel中使用Queue的最基本操作教程
2017/12/27 PHP
PHP格式化显示时间date()函数代码
2018/10/03 PHP
PHP大文件切割上传功能实例分析
2019/07/01 PHP
利用javascript移动div层-javascript 拖动层
2009/03/22 Javascript
javascript 跨浏览器开发经验总结(五) js 事件
2010/05/19 Javascript
JS获取表格内指定单元格html内容的方法
2015/03/31 Javascript
详解JavaScript正则表达式中的global属性的使用
2015/06/16 Javascript
详解如何使用webpack打包Vue工程
2017/05/27 Javascript
js实现音乐播放控制条
2017/09/09 Javascript
vue封装第三方插件并发布到npm的方法
2017/09/25 Javascript
vue 使用Jade模板写html,stylus写css的方法
2018/02/23 Javascript
AngularJS使用Filter自定义过滤器控制ng-repeat去除重复功能示例
2018/04/21 Javascript
vue 实现左右拖拽元素并且不超过他的父元素的宽度
2018/11/30 Javascript
vue使用一些外部插件及样式的配置代码
2019/11/18 Javascript
Python的Django框架安装全攻略
2015/07/15 Python
Python 中 list 的各项操作技巧
2017/04/13 Python
对python3 urllib包与http包的使用详解
2018/05/10 Python
在python中利用numpy求解多项式以及多项式拟合的方法
2019/07/03 Python
python中 * 的用法详解
2019/07/10 Python
解决pyCharm中 module 调用失败的问题
2020/02/12 Python
python烟花效果的代码实例
2020/02/25 Python
GAP阿联酋官网:GAP UAE
2017/11/30 全球购物
阿迪达斯越南官网:adidas越南
2020/07/19 全球购物
升职自荐书范文
2013/11/28 职场文书
交警个人先进事迹材料
2014/05/11 职场文书
2014年内部审计工作总结
2014/12/09 职场文书
常务副总经理岗位职责
2015/02/02 职场文书
小学新教师个人总结
2015/02/05 职场文书
jQuery ajax - getScript() 方法和getJSON方法
2021/05/14 jQuery