【发布时间】:2019-03-19 15:29:18
【问题描述】:
我有一组无序列表。我创建了一些让每个列表都被点击的函数,它将运行一个 JS 函数。现在我想添加一些css,如果单击列表,它的bg颜色会改变。到目前为止我的代码:
function getDealsTable(obj) {
var tenor = obj.innerHTML;
$(this).closest('li').css('background-color: rgba(86, 142, 175, 1) !important');
$(this).closest('li').siblings('li').css('background-color: rgba(15, 86, 132, 1) !important');
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class='tenors'>
<li onclick='getDealsTable(this);'>12x</li>
<li onclick='getDealsTable(this);'>24x</li>
<li onclick='getDealsTable(this);'>36x</li>
<li onclick='getDealsTable(this);'>48x</li>
</ul>
不幸的是,它不起作用。我试图将其更改为课程,但仍然无法正常工作。任何人都可以帮助我吗?谢谢
【问题讨论】:
-
最接近的意思是遍历树 - 你不能有最近的 li 除非它是一个嵌套的 ul(因为你的点击绑定到一个 li)
-
'this' 是 li,所以不需要最接近,试试 $(this).css('background-color: rgba(86, 142, 175, 1) !important');
-
已经尝试只使用 $(this) 但仍然无法正常工作
-
真正想要实现什么?还有兄弟姐妹吗?
标签: javascript jquery html css