使排序后的数组在网页上显示结果



我有一把小提琴,可以对网页上的项目进行排序。通过检查console.log结果,我可以看出它是有效的。我只是不知道如何将结果显示在实际的网页上——项目按顺序排序。

http://jsfiddle.net/AQFFq/21/

function myFunction() {
var elements = [].slice.call(document.getElementsByClassName("price"));
elements.sort(function(a, b) {
return parseFloat(b.innerHTML.substring(1)) - parseFloat(a.innerHTML.substring(1));
});
for (var i = 0; i < elements.length; i++)
elements[i].parentNode.appendChild(elements[i]);
console.log(elements);
}

谢谢。

正如我在评论中提到的,您的排序有几个问题。1你的for循环周围没有{},所以它只运行一次。2您正在将price附加到其自己的父节点,并且由于父节点仍处于其原始顺序,因此函数不执行任何操作。您需要做的是选择要排序的整个元素的父节点,并将其附加到可排序项的第一个公共父节点。这里有一个jsfiddle,我指的是函数fiddle ps我在排序函数中切换了a和b,这样结果实际上与原始页面不同。