全部, 我有以下JS小提琴:http://jsfiddle.net/HHtBX/11/
我试图基本上关闭所有其他打开的盒子。所以在它打开onClick并切换一个打开后我尝试关闭其他所有内容。
切换部分工作正常,但我无法关闭打开的框。关于如何实现这一目标的任何想法?
谢谢!
答案 0 :(得分:3)
像这样:http://jsfiddle.net/49bWx/添加:
$('.trigger.active').not(this).toggleClass("active").next().slideToggle('slow');
答案 1 :(得分:1)
这个怎么样
$(".trigger").click(function() {
$(this).toggleClass("active").next().slideToggle('slow', function(){
$('.box').not(this).slideUp('slow');
});
return false;
});
答案 2 :(得分:0)
在onclick事件中隐藏所有展开的项目(带有类框)。
$(".trigger").click(function() {
$(".box").slideUp();
$(this).toggleClass("active").next().slideToggle('slow');
return false;
}).find(".box").next().slideToggle('slow');
以下是工作示例:http://jsfiddle.net/HHtBX/13/
答案 3 :(得分:0)
$(".tb-toggle").each(function(){
$(this).find(".box").hide();
});
$(".trigger").click(function() {
$(".tb-toggle").each(function(){
$(this).find(".box").hide();
});
$(this).toggleClass("active").next().slideToggle('slow');
return false;
}).find(".box").next().slideToggle('slow');
答案 4 :(得分:0)
尝试
$(".trigger").click(function() {
$(".box").slideUp('slow');
$(this).toggleClass("active").next().slideToggle('slow');
return false;
});
答案 5 :(得分:0)
http://jsfiddle.net/HHtBX/14/试试这个,
var next=$(this).toggleClass("active").next();
next.slideToggle('slow');
$('.box:visible').not(next).slideToggle('slow');
答案 6 :(得分:0)
打开这个盒子时,是否要隐藏所有其他盒子?
$(".tb-toggle").each(function(){
$(this).find(".box").hide();
});
$(".trigger").click(function() {
$(this).toggleClass("active").next().slideToggle('slow');
$(".trigger.active").not(this).removeClass("active").next().slideUp('slow');
return false;
}).find(".box").next().slideToggle('slow');
我把它放在小提琴上http://jsfiddle.net/HHtBX/18/