老师 请问怎么在点击时去掉其他元素这个类
来源:2-4 编程练习
一路向蓝
2019-05-13 12:06:10
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
.red {
color: red;
}
</style>
</head>
<body>
<ul>
<li class="w-li">前端小白入门</li>
<li class="w-li">前端进阶:响应式开发与常用框架</li>
<li class="w-li">HTML5与CSS3实现动态网页</li>
<li class="w-li">HTML5&CSS3进阶与常用框架</li>
<li class="w-li">JavaScript基础入门</li>
<li class="w-li">进击JavaScript核心</li>
</ul>
<script src="https://cdn.bootcss.com/zepto/1.1.7/zepto.min.js"></script>
<script>
/*此处写代码*/
$(document).ready(function(){
$("ul").on("click",function(e){
if(e.target && /(^|\s)w\-li($|\s)/.test(e.target.className)){
// $("li").removeClass("red");
e.target.setAttribute("class","red");
}
})
})
</script>
</body>
</html>
3回答
soso_crazy
2019-05-31
其实不需要原生的js去解决,绑定点击事件,先对li移除red的class,再对点击的li添加red的class就可以了。
$(document).ready(function() {
$('li').on("click", function() {
$('li').removeClass('red');
$(this).addClass('red');
});
});
好帮手慕糖
2019-05-13
你好,能够自己发现并解决问题,很棒哦,继续加油!
祝学习愉快!
一路向蓝
提问者
2019-05-13
好了 解决了
$("li").removeClass("red");
e.target.classList.add("red");
原生JS用的好 真好
相似问题