利用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 相关文章推荐
判断js中各种数据的类型方法之typeof与0bject.prototype.toString讲解
Nov 07 Javascript
JQuery实现样式设置、追加、移除与切换的方法
Jun 11 Javascript
JS时间特效最常用的三款
Aug 19 Javascript
遍历json 对象的属性并且动态添加属性的实现
Dec 02 Javascript
JavaScript函数节流的两种写法
Apr 07 Javascript
JavaScript学习总结之正则的元字符和一些简单的应用
Jun 30 Javascript
angularJS自定义directive之带参方法传递详解
Oct 09 Javascript
axios如何取消重复无用的请求详解
Dec 15 Javascript
vue相关配置文件详解及多环境配置详细步骤
May 19 Javascript
uni-app微信小程序登录授权的实现
May 22 Javascript
Vue自定义全局弹窗组件操作
Aug 11 Javascript
基于vue hash模式微信分享#号的解决
Sep 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
老机欣赏|中国60年代精品收音机
2021/03/02 无线电
php 动态添加记录
2009/03/10 PHP
用PHP的超级变量$_GET获取HTML表单(Form) 数据
2011/05/07 PHP
PHP中用Trait封装单例模式的实现
2019/12/18 PHP
为你的 Laravel 验证器加上多验证场景的实现
2020/04/07 PHP
js静态作用域的功能。
2006/12/25 Javascript
Js动态创建div
2008/09/25 Javascript
用dtree实现树形菜单 dtree使用说明
2011/10/17 Javascript
js字符串截取函数substr substring slice使用对比
2013/11/27 Javascript
js中自定义方法实现停留几秒sleep
2014/07/11 Javascript
js文本框输入内容智能提示效果
2015/12/02 Javascript
angularjs表格分页功能详解
2016/01/21 Javascript
AngularJs 利用百度地图API 定位当前位置 获取地址信息
2017/01/18 Javascript
js实现数组去重方法及效率?Ρ? target=
2017/02/14 Javascript
js实现横向拖拽导航条功能
2017/02/17 Javascript
JS实现闭包中的沙箱模式示例
2017/09/07 Javascript
JS获取数组中出现次数最多及第二多元素的方法
2017/10/27 Javascript
原生实现一个react-redux的代码示例
2018/06/08 Javascript
Vue 应用中结合vux使用微信 jssdk的方法
2018/08/28 Javascript
webpack4+react多页面架构的实现
2018/10/25 Javascript
学前端,css与javascript重难点浅析
2020/06/11 Javascript
浅谈用VSCode写python的正确姿势
2017/12/16 Python
Python图像处理之识别图像中的文字(实例讲解)
2018/05/10 Python
对sklearn的使用之数据集的拆分与训练详解(python3.6)
2018/12/14 Python
Python3 执行Linux Bash命令的方法
2019/07/12 Python
基于Python获取城市近7天天气预报
2019/11/26 Python
解决tensorflow由于未初始化变量而导致的错误问题
2020/01/06 Python
pytorch 实现在一个优化器中设置多个网络参数的例子
2020/02/20 Python
西班牙英格列斯百货英国官网:El Corte Inglés英国
2017/10/30 全球购物
如何开发安全的AJAX应用
2014/03/26 面试题
初一家长会邀请函
2014/01/31 职场文书
玲玲的画教学反思
2014/02/04 职场文书
会计学专业求职信
2014/07/17 职场文书
社区党员群众路线教育实践活动心得体会
2014/11/03 职场文书
职位证明模板
2015/06/23 职场文书
婚庆公司开业主持词
2015/06/30 职场文书