我想在点击按钮时突出显示该按钮,并将特定课程添加到<div>
class
item
。
HTML
<button type="button" class="btn gridLarge">largegrid</button>
<button type="button" class="btn grid active">smallgrid</button>
<button type="button" class="btn list">list</button>
<div class="item">text</div>
CSS
.item{
height:240px;
border:1px solid orange;
}
.item.list{
width:600px;
height:500px;
border:1px solid red;
}
.item.gird{
width:400px;
height:500px;
border:1px solid red;
}
.item.gridlarge{
width:500px;
height:500px;
border:1px solid red;
}
button{
cursor:pointer;
border:1px solid green;
padding:20px;
color:red;
margin-bottom:20px;
}
.btn.active{
color:green;
background-color:red;
}
例如
button.gridLarge
后,我想突出显示它(添加课程active
)并将课程.gridLarge
添加到div.item
button.grid
后,我想突出显示它并将课程.grid
添加到div.item
button.list
后,我想突出显示它并将课程.list
添加到div.item
这是我目前的代码:JSFiddle
答案 0 :(得分:2)
如果您将要添加的课程应用为按钮的id
,则可以执行以下操作:
$('.btn').click(function(){
$('.active').removeClass('active');
$(this).addClass('active');
$('.item').removeClass().addClass('item').addClass(this.id);
});
旁注:您的css中有拼写错误,第二个按钮中的班级为grid
,css为gird
答案 1 :(得分:2)
您可以class
获取attr
,然后移除btn
类以获取其他class
名称。但是,我更希望在data
属性中保存类名。
<强> HTML:强>
<button type="button" data-class="gridLarge" class="btn gridLarge active">largegrid</button>
<button type="button" data-class="grid" class="btn grid">smallgrid</button>
<button type="button" data-class="list" class="btn list">list</button>
<div class="item"></div>
<强>使用Javascript:强>
$('.btn').click(function () {
var $this = $(this);
$('.btn').removeClass('active');
$this.addClass('active');
$('.item').removeClass('gridLarge grid list').addClass($this.data('class'));
});
<强> CSS:强>
.item {
height:240px;
border:1px solid orange;
}
.item.list {
width:600px;
height:500px;
border:1px solid red;
}
.item.grid {
width:400px;
height:500px;
border:1px solid red;
}
.item.gridlarge {
width:500px;
height:500px;
border:1px solid red;
}
button {
cursor:pointer;
border:1px solid green;
padding:20px;
color:red;
margin-bottom:20px;
}
.btn.active {
color:green;
background-color:red;
}
答案 2 :(得分:1)