欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

js实现列表按字母排序

程序员文章站 2022-06-24 13:23:38
本文实例为大家分享了js实现列表按字母排序的具体代码,供大家参考,具体内容如下知识点1.parentnode:返回元素父节点的属性2.insertbefore()方法insertbefore() 方法...

本文实例为大家分享了js实现列表按字母排序的具体代码,供大家参考,具体内容如下

知识点

1.parentnode:返回元素父节点的属性
2.insertbefore()方法
insertbefore() 方法可在已有的子节点前插入一个新的子节点。
语法:node.insertbefore(newnode,existingnode)
newnode 节点对象 必须。要插入的节点对象
existingnode 节点对象 必须。要添加新的节点前的子节点。

<!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>
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;
  }
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

相关标签: js 列表 排序