此功能组织列表,不按字母顺序排列:在Firefox和Internet Explorer中升序/降序。 在谷歌铬和边缘工作。功能组织列表在Firefox中不工作
这里是代码:
<script type="text/javascript">
window.onload = function() {
var desc = false;
document.getElementById("Order").onclick = function() {
sortUnorderedList("PostList", desc);
desc = !desc;
return false;
}
}
function compareText(a1, a2) {
var t1 = a1.innerText,
t2 = a2.innerText;
return t1 > t2 ? 1 : (t1 < t2 ? -1 : 0);
}
function sortUnorderedList(ul, sortDescending) {
if (typeof ul == "string") {
ul = document.getElementById(ul);
}
var lis = ul.getElementsByTagName("li");
var vals = [];
for (var i = 0, l = lis.length; i < l; i++) {
vals.push(lis[i]);
}
vals.sort(compareText);
if (sortDescending) {
vals.reverse();
}
ul.innerHTML = '';
for (var i = 0, l = vals.length; i < l; i++) {
ul.appendChild(vals[i]);
}
}
</script>
似乎有什么不奏效?控制台中是否有错误?它运行但不符合你的期望? – AtheistP3ace
你确定点击处理程序不工作吗?也许你的过滤器有问题? –
根据这个小提琴工作正常:http://jsfiddle.net/t1pm81sg/它不工作?任何例外?或者处理程序没有被解雇?你有没有在你的处理程序的开始处添加一个'console.log()',然后再运行其他代码来查看它是否真的被触发了? – ste2425