老师,为什么不能这样链式写?
来源:2-5 编程练习
慕虎4498661
2020-06-06 22:07:31
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
ul{
cursor:pointer;
}
</style>
</head>
<body>
<ul id="menu">
<li>Web前端攻城狮</li>
<li>前端小白入门</li>
<li>前端进阶:响应式开发与常用框架</li>
<li>HTML5与CSS3实现动态网页</li>
<li>HTML5&CSS3进阶与常用框架</li>
<li>JavaScript基础入门</li>
<li>进击JavaScript核心</li>
</ul>
<script src="https://cdn.bootcss.com/zepto/1.1.7/zepto.min.js"></script>
<script>
/*此处写代码*/
$('ul').on('click','li',function(){
$('li').css('backgroundColor','');
$(this).css('backgroundColor','yellow')
.prev().css('backgroundColor','blue')
.next().css('backgroundColor','red')
})
</script>
</body>
</html>
1回答
好帮手慕久久
2020-06-07
同学你好,问题解答如下:
因为“$(this).css('backgroundColor', 'yellow').prev().css('backgroundColor', 'blue')”这句代码最后操作的是“$(this)的前一个元素”,所以返回的也是$(this)的前一个元素,可以打印看一下:
所以接下来的next()方法,是对返回的“prev”进行操作,因此不能这样写。
如果我的回答帮到了你,欢迎采纳,祝学习愉快!
相似问题