通过点击链接,我想显示最初隐藏的div .box
。但是,如果链接被再次点击,而.box
可见,我想隐藏它。点击显示并隐藏div
我可以用下面的代码显示,但如何再次单击链接时隐藏它?
<a href="#" class="link">Click</a>
<div class="box" style="display: none">box</div>
$('.link').click(function(e){
$('.box').fadeIn('slow');
});
通过点击链接,我想显示最初隐藏的div .box
。但是,如果链接被再次点击,而.box
可见,我想隐藏它。点击显示并隐藏div
我可以用下面的代码显示,但如何再次单击链接时隐藏它?
<a href="#" class="link">Click</a>
<div class="box" style="display: none">box</div>
$('.link').click(function(e){
$('.box').fadeIn('slow');
});
您需要使用fadeToggle()
以淡入淡出和切换。添加event.preventDefault()
以防止点击事件的默认操作。
更新:您可以使用stop()
清除动画队列
$('.link').click(function(e) {
e.preventDefault()
$('.box').stop()
.fadeToggle('slow');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<a href="#" class="link">Click</a>
<div class="box" style="display: none">box</div>
添加'e.preventDefault()'或'return false'以防止在页面上滚动/滚动的奇怪现象以及地址栏中的丑陋'#':) – Phillip
HTML:
<a href="#" class="link">Click</a>
<div class="box" style="display: none">box</div>
你可以用它来ggle方法:
$('.link').click(function(e){
$('.box').toggle('slow');
});
这里是Demo
严重?为什么是-1?我在这里问了什么问题? – sam