1

一周前我开始学习 JavaScript,我自己做了一个排序功能。它确实有效,但它需要我修改 DOM 节点,有没有办法在不改变节点的情况下对节点进行排序innerHTML

<body>
<ul id="list">
    <li>Art</li>
    <li>Mobile</li>
    <li>Education</li>
    <li>Games</li>
    <li>Magazines</li>
    <li>Sports</li>
</ul>
</body>

JavaScript:

var list = document.getElementById("list");
var myList = list.getElementsByTagName("li");
var a = [];
for (var i = 0; i < myList.length; i++) {
    a[i] = myList[i].innerHTML;
}
a.sort();
for (var i = 0; i < myList.length; i++) {
    myList[i].innerHTML = a[i];
}

输出:

  • 艺术
  • 教育
  • 游戏
  • 杂志
  • 移动的
  • 运动的

jsFiddle 示例

这个效果很好,

4

0 回答 0