本文实例为大家分享了js实现列表按字母排序的具体代码,供大家参考,具体内容如下
知识点
1.parentNode:返回元素父节点的属性
2.insertBefore()方法
insertBefore() 方法可在已有的子节点前插入一个新的子节点。
语法:node.insertBefore(newnode,existingnode)
newnode 节点对象 必须。要插入的节点对象
existingnode 节点对象 必须。要添加新的节点前的子节点。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
<!DOCTYPE html> < html lang = "en" > < head > < meta charset = "UTF-8" > < title >列表按字母排序</ title > </ head > < body > < p >点击按钮按字母排序列表</ p > < button onclick = "sortList()" >排序</ button > < ul id = "UL" > < li >Oslo</ li > < li >Stockholm</ li > < li >Helsinki</ li > < li >Berlin</ li > < li >Rome</ li > < li >Madrid</ li > </ ul > < script src = "../js/列表按字母排序.js" > </ script > </ body > </ html > |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
function sortList() { var list=document.getElementById( "UL" ); var switching= true ; /*做一个循环*/ while (switching){ //不切换 switching= false ; var li=list.getElementsByTagName( "li" ); //遍历所有的列表 for ( var i=0;i<(li.length-1);i++){ switching= false ; //检查下一项是否应该和当前项换位置 if (li[i].innerHTML.toLowerCase() > li[i + 1].innerHTML.toLowerCase()) { switching= true ; break ; } } //位置互换 if (switching){ li[i].parentNode.insertBefore(li[i+1],li[i]); switching= true ; } } } |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/weixin_45596380/article/details/105954993