[英]How to change (add or remove) class inside of <ul> childs when childs are clicked
[英]Sorting an UL Class childs using Javascript
我对JavaScript非常陌生。 我已经沿着这条线看了几个以前回答过的问题。 我的HTML大致是:
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
.skills{
list-style:none;
padding: 0;
margin-bottom: 200px;
}
.skills li{
width: 200px;
float: left;
padding: 0;
}
</style>
</head>
<body>
<h2>Skills</h2>
<ul class="skills">
<li>a</li>
<li>b</li>
<li>c</li>
<li>d</li>
<li>e</li>
</ul>
</body>
</html>
我尝试使用:
<script type="text/javascript">
function sortLi()
{
var skills = [getElementsbyTagName("li")];
skills.sort();
var x=document.getElementsByTagName("li");
x.innerHTML=skills;
}
</script>
并通过将.getElementsbyTagName与.getElementsbyClass(“ skills”)替换为无效。 我知道我做错了事,但不能指责它。
签出此解决方案(这是jsfiddle上的链接。)
var mylist = $('.skills');
var listitems = mylist.children('li').get();
listitems.sort(function(a, b) {
return $(a).text().toUpperCase().localeCompare($(b).text().toUpperCase());
})
$.each(listitems, function(idx, itm) {
mylist.append(itm);
});
这使用jQuery,几乎完全从另一个Stackoverflow答案中解脱出来。
基本上,您有一些语法错误,没有调用代码,等等。看看我在jsfiddle函数上链接到的有效解决方案如何,看看是否有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.