我有以下代码。只要我把光标移开,背景颜色马上就会变回白色。当用户单击时,如何选择li元素?
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css" rel="stylesheet">
<link href="https://netdna.bootstrapcdn.com/font-awesome/2.0/css/font-awesome.css" rel="stylesheet">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div class="col-sm-2 col-md-2" id="sidebar-wrapper">
<div id="sidebar">
<ul class="nav list-group" style="cursor:pointer;">
<li class="active">
<a class="list-group-item"><i class="icon-home icon-1x"></i>Work Order</a>
</li>
<li>
<a class="list-group-item"><i class="icon-home icon-1x"></i>Work Order Jobs</a>
</li>
</ul>
</div>
</div>
发布于 2016-02-11 01:16:34
既然你已经在使用jQuery了,为什么不直接使用点击功能呢?
仅选择one项目:
$('.nav li').click(function() {
$(this).toggleClass('active').siblings().removeClass('active');
});用于选择multiple items:
$('.nav li').click(function() {
if ($(this).hasClass('active')) {
$(this).removeClass('active');
} else {
$(this).addClass('active');
}
});在CSS中,重写background-color,如下所示。它实际上是在<a>标签上设置的,而不是Bootstrap中的<li>。
.nav>li.active>a {
background-color: #ccc;
}发布于 2016-02-11 01:12:28
您可以将活动类添加到链接中。
HTML
<a class="list-group-item active>Work Order</a>CSS
.list-group-item.active {
background-color: gray
}要在单击时更改背景色,您必须使用jQuery。
$( document ).ready(function() {
$(".nav li a").click(function(){
$('li a.active').removeClass('active');
$(this).addClass('active') ;
});
});发布于 2016-02-11 01:20:22
您可以这样做,向li添加一个label和一个input,而不需要任何脚本。
HTML
<label><input type="radio" class="hideme" name="li">
<a class="list-group-item">
<i class="icon-home icon-1x"></i>Work Order Jobs
</a>
</label>CSS
label {
display: inline-block;
width: 100%;
}
.hideme {
display: none;
}
.hideme:checked + .list-group-item{
background-color: gray
}https://stackoverflow.com/questions/35321363
复制相似问题