jQuery实现对无序列表的排序功能(附demo源码下载)

 更新时间:2016年06月25日 10:37:54   作者:yiluoAK_47  
这篇文章主要介绍了jQuery实现对无序列表的排序功能,涉及jQuery与javascript常见的文本操作函数与sort排序函数的相关使用方法,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了jQuery实现对无序列表的排序功能。分享给大家供大家参考,具体如下:

利用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="jquery-1.7.2.min.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相关内容感兴趣的读者可查看本站专题:《jQuery操作DOM节点方法总结》、《jQuery扩展技巧总结》、《jQuery常用插件及用法总结》、《jQuery拖拽特效与技巧总结》、《jQuery表格(table)操作技巧汇总》、《jquery中Ajax用法总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》及《jquery选择器用法总结

希望本文所述对大家jQuery程序设计有所帮助。

相关文章

  • jquery实现简单自动轮播图效果

    jquery实现简单自动轮播图效果

    这篇文章主要为大家详细介绍了jquery实现简单自动轮播图效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-07-07
  • jQuery中:lt选择器用法实例

    jQuery中:lt选择器用法实例

    这篇文章主要介绍了jQuery中:lt选择器用法,实例分析了:lt选择器的功能、定义及匹配小于指定索引值元素的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2014-12-12
  • 强烈推荐240多个jQuery插件提供下载

    强烈推荐240多个jQuery插件提供下载

    jQuery 是继 prototype 之后又一个优秀的 Javascript 框架。其宗旨是—写更少的代码,做更多的事情。它是轻量级的 js 库(压缩后只有21k) ,这是其它的 js 库所不及 的,它兼容 CSS3,还兼容各种浏览器(IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。
    2008-06-06
  • 基于JQuery的购物车添加删除以及结算功能示例

    基于JQuery的购物车添加删除以及结算功能示例

    本篇文章主要介绍了基于JQuery的购物车添加删除以及结算功能示例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-03-03
  • jQuery学习笔记之入门

    jQuery学习笔记之入门

    本文主要对jQuery的基础知识进行介绍,非常适合刚开始接触JQuery学习的朋友们,下面就跟小编一起来看下吧
    2016-12-12
  • 使用jQuery制作遮罩层弹出效果的极简实例分享

    使用jQuery制作遮罩层弹出效果的极简实例分享

    这篇文章主要介绍了使用jQuery制作遮罩层弹出效果的极简实例分享,效果中背景为半透冥且不可操作,在制作页面上传功能等场景下十分实用,需要的朋友可以参考下
    2016-05-05
  • 浅谈 jQuery 事件源码定位问题

    浅谈 jQuery 事件源码定位问题

    在一个不是自己写的页面上,如何快速定位到他绑定的事件代码在哪,下面为大家简单的介绍下,需要的朋友可以参考下
    2014-06-06
  • jQuery通过扩展实现抖动效果的方法

    jQuery通过扩展实现抖动效果的方法

    这篇文章主要介绍了jQuery通过扩展实现抖动效果的方法,涉及jQuery扩展的技巧及抖动特效的实现方法,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • jQuery插件slicebox实现3D动画图片轮播切换特效

    jQuery插件slicebox实现3D动画图片轮播切换特效

    Slicebox是一款效果非常华丽的jquery和css3 3d幻灯片插件。Slicebox幻灯片插件能够将图片切片,然后做3d旋转。Slicebox幻灯片插件共有4种效果,视觉冲击感非常强。
    2015-04-04
  • 使用jQuery重置(reset)表单的方法

    使用jQuery重置(reset)表单的方法

    这篇文章主要介绍了使用jQuery重置(reset)表单的方法,需要的朋友可以参考下
    2014-05-05

最新评论