我正在尝试使用jQuery在网页上打开/关闭控制'盒子'。不幸的是,如果用户恰好单击已经打开的控件,则关闭一个控件再重新打开它看起来并不好看 (盒子是相互排斥的)。
我正在使用的代码无法正常工作,我不确定原因。仍然会出现关闭一个盒子再重新打开它的情况,这并不是期望的功能。 我创建了“val”变量进行调试;在调试器中,它显示“val”具有与$(this)完全相同的值,这应该防止它进入if语句中的.slideToggle()
,但实际上没有。
function openBox(index)
{
val = $('#box' + index);
$('.profilePageContentBox').each(function(){
if($(this).css('display') != 'none')
{
if($(this) != val)
{
$(this).slideToggle(200);
}
}
});
val.slideToggle(200);
}