Jquery类切换
问题描述:
我有一个列表中的两个按钮,我希望能够在点击之间切换它们之间的类。Jquery类切换
我是Jquery的初学者,写了一些行,但它似乎没有工作,即使一切按照Chrome的控制台正确链接。
这里的HTML:
<ul class="tab-group">
<li class="tab active"><a href="#signup">Sign Up</a></li>
<li class="tab"><a href="#login">Log In</a></li>
</ul>
,这里是相应的Jquery:
$('.tab a').click(function) {
e.preventDefault();
$(this).parent().addClass('active');
$(this).parent().siblings().removeClass('active');
target = $(this).attr('href');
$('.tab-content > div').not(target).hide();
$(target).fadeIn(600);
});
提前感谢!
所以它似乎现在工作,部分,它不工作在我的完整的HTML页面,但它只使用<ul>
时,所以我会从一开始就重做它,并找到它出错的地方。
非常感谢您的答案!
答
- 你有一个语法错误 - 它应该是
$('.tab a').click(function() {
- 如果你想使用事件对象(
e.preventDefault()
在你的代码),你应该把它添加到函数声明 -function(e) {
,否则e
变量不定义。
这里是修复你的代码:
$('.tab a').click(function(e) {
e.preventDefault();
$(this).parent().addClass('active');
$(this).parent().siblings().removeClass('active');
target = $(this).attr('href');
$('.tab-content > div').not(target).hide();
$(target).fadeIn(600);
});
.active {
background: blue;
}
.active a {
color: white;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="tab-group">
<li class="tab active"><a href="#signup">Sign Up</a></li>
<li class="tab"><a href="#login">Log In</a></li>
</ul>
你检查的答案吗?请接受它,如果它是正确的(点击左边的V) – Dekel