jQuery对无序列表进行排序的原理是:获取无序列表中的所有项,将它们变成数组,通过JavaScript函数进行排序,然后再次输出。使用的jQuery函数有ready()、get()、text()、each()、append()和JavaScript函数sort()。
1.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是原始文本值。
(3)jQuery函数append() -向元素追加内容
该函数将内容附加到每个匹配元素的内部。它的语法如下:
object.append(内容|fn)
注意:这个操作类似于对指定的元素执行appendChild方法并将它们添加到文档中的情况。内容参数指示附加的内容;Fn(index,html)返回要附加到每个匹配元素的HTML字符串,并接受两个参数。index参数是这个集合中对象的索引值,html参数是这个对象的原始html值。
2.引言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库:
脚本语言=' JavaScript ' src=' http : jslib/jquery-1.6 . js '/脚本然后,添加完整的代码:
脚本语言='JavaScript '类型='text/JavaScript' $(文档)。ready(function(){ var items=$(')。order obj Li’)。get();//获取所有li加载要排序的数组项集。sort(函数(a,b)//调用JavaScript内置函数sort {var elementone=$(a))。text();var elementtwo=$(b)。text();if(elementone elementtwo)返回-1;if(elementone elementtwo)返回1;返回0;});var ul=$('。order obj’);$.每个(items,function(i,li) //通过遍历每个数组元素来填充无序列表{ ul . append(Li);});});/script上面的代码按数组对无序列表进行排序,并重新填充它,使列表项有序。
具体效果如图4.11所示。
以上就是边肖带来的jQuery排序无序列表的简单方法的全部内容。希望大家多多支持我们~