代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style type='text/css'>
.active {
color: rgb(189, 55, 55);
}
</style>
</head>
<body>
<ul>
<li class='a'>a</li>
<li class='b'>b</li>
<li class='c'>c</li>
</ul>
<script type='text/javascript'>
var Li = document.querySelectorAll('li');
for (var i = 0; i < Li.length; i++) {
Li[i].onclick = function() {
for (var i = 0; i < Li.length; i++) {
Li[i].className = '';
}
this.className = 'active';
}
}
</script>
</body>
</html>
最开始看for循环里面的onclick代码时,我百思不得其解,为什么点击相应的li时,颜色会改变,后来才知道原来是运行for循环里面的onclick代码时,对每个li都产生了一个监听,只要我们一点击,那么就会执行function函数,改变颜色