js實(shí)現(xiàn)列表按字母排序
本文實(shí)例為大家分享了js實(shí)現(xiàn)列表按字母排序的具體代碼,供大家參考,具體內(nèi)容如下
知識(shí)點(diǎn)
1.parentNode:返回元素父節(jié)點(diǎn)的屬性
2.insertBefore()方法
insertBefore() 方法可在已有的子節(jié)點(diǎn)前插入一個(gè)新的子節(jié)點(diǎn)。
語法:node.insertBefore(newnode,existingnode)
newnode 節(jié)點(diǎn)對(duì)象 必須。要插入的節(jié)點(diǎn)對(duì)象
existingnode 節(jié)點(diǎn)對(duì)象 必須。要添加新的節(jié)點(diǎn)前的子節(jié)點(diǎn)。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>列表按字母排序</title> </head> <body> <p>點(diǎn)擊按鈕按字母排序列表</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; /*做一個(gè)循環(huán)*/ while (switching){ //不切換 switching=false; var li=list.getElementsByTagName("li"); //遍歷所有的列表 for(var i=0;i<(li.length-1);i++){ switching=false; //檢查下一項(xiàng)是否應(yīng)該和當(dāng)前項(xiàng)換位置 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; } } }
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SpringMVC restful 注解之@RequestBody進(jìn)行json與object轉(zhuǎn)換
這篇文章主要介紹了SpringMVC restful 注解之@RequestBody進(jìn)行json與object轉(zhuǎn)換的相關(guān)資料,需要的朋友可以參考下2015-12-12Javarscript中模塊(module)、加載(load)與捆綁(bundle)詳解
這篇文章主要給大家介紹了關(guān)于Javarscript中模塊(module)、加載(load)與捆綁(bundle)的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)吧。2017-05-05EasyUI的DataGrid綁定Json數(shù)據(jù)源的示例代碼
本篇文章主要介紹了EasyUI的DataGrid綁定Json數(shù)據(jù)源的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-12-1224個(gè)實(shí)用JavaScript?開發(fā)技巧
這篇文章主要給大家分享了24個(gè)實(shí)用JavaScript?的開發(fā)技巧,文章圍繞JavaScript?的開發(fā)技巧講解展開全文,具有一定的參考價(jià)值,需要的朋友可以參考一下,希望對(duì)你有所幫助2021-12-12