保持手风琴的所有部分都打开

时间:2016-04-20 14:11:32

标签: jquery accordion jquery-ui-accordion

我的网站上有this code,我希望当我点击另一个时保持项目打开,我的意思是,巴西已经在我的列表中打开了,当用户点击意大利时,我想要的是#39; t崩溃巴西,刚刚开放意大利。

<script type="text/javascript">

$(&#39; .country&gt; .countrybar&#39;)。click(function(){

var checkElement = $(this).next();

$('.country > .countrybar').removeClass('active');
$(this).closest('.country > .countrybar').addClass('active');   

if((checkElement.is('.country > .countrycontent')) && (checkElement.is(':visible'))) {
    $(this).closest('.country > .countrybar').removeClass('active');
    checkElement.slideUp('fast');
}

if((checkElement.is('.country > .countrycontent')) && (!checkElement.is(':visible'))) {
    $('.country > .countrycontent:visible').slideUp('fast');
    checkElement.slideDown('fast');
}

if (checkElement.is('.country > .countrycontent')) {
    return false;
} else {
    return true;    
}

}); $(&#39; .countrycontent&gt; .leaguebar&#39;)。click(function(){

var checkElement = $(this).next();

$('.countrycontent > .leaguebar').removeClass('active');
$(this).closest('.countrycontent > .leaguebar').addClass('active'); 

if((checkElement.is('.countrycontent > .leaguecontent')) && (checkElement.is(':visible'))) {
    $(this).closest('.countrycontent > .leaguebar').removeClass('active');
    checkElement.slideUp('fast');
}

if((checkElement.is('.countrycontent > .leaguecontent')) && (!checkElement.is(':visible'))) {
    $('.countrycontent > .leaguecontent:visible').slideUp('fast');
    checkElement.slideDown('fast');
}

if (checkElement.is('.countrycontent > .leaguecontent')) {
    return false;
} else {
    return true;    
}

});

2 个答案:

答案 0 :(得分:0)

你的意思是this?我删除了一些检查其他内容是否可见的代码。如果是这样,它会滑动...现在除非你点击它,否则它不会发生。

但你自己写了这段代码吗?或者你是否从其他人那里复制/粘贴了它?

$('.country > .countrybar').click(function() {

    var checkElement = $(this).next();

    //$('.country > .countrybar').removeClass('active');
    $(this).closest('.country > .countrybar').addClass('active');   

    if((checkElement.is('.country > .countrycontent')) && (checkElement.is(':visible'))) {
        //$(this).closest('.country > .countrybar').removeClass('active');
        checkElement.slideUp('fast');
    }

    if((checkElement.is('.country > .countrycontent')) && (!checkElement.is(':visible'))) {
        //$('.country > .countrycontent:visible').slideUp('fast');
        checkElement.slideDown('fast');
    }

    if (checkElement.is('.country > .countrycontent')) {
        return false;
    } else {
        return true;    
    }
});
$('.countrycontent > .leaguebar').click(function() {

    var checkElement = $(this).next();

    $('.countrycontent > .leaguebar').removeClass('active');
    $(this).closest('.countrycontent > .leaguebar').addClass('active'); 

    if((checkElement.is('.countrycontent > .leaguecontent')) && (checkElement.is(':visible'))) {
        $(this).closest('.countrycontent > .leaguebar').removeClass('active');
        checkElement.slideUp('fast');
    }

    if((checkElement.is('.countrycontent > .leaguecontent')) && (!checkElement.is(':visible'))) {
        $('.countrycontent > .leaguecontent:visible').slideUp('fast');
        checkElement.slideDown('fast');
    }

    if (checkElement.is('.countrycontent > .leaguecontent')) {
        return false;
    } else {
        return true;    
    }
});

答案 1 :(得分:-2)

检查我的代码:https://jsfiddle.net/628qzvo6/

$('.country > .countrybar').click(function() {

    var checkElement = $(this).next();

    //$('.country > .countrybar').removeClass('active');
    $(this).closest('.country > .countrybar').addClass('active');   

    if((checkElement.is('.country > .countrycontent')) && (checkElement.is(':visible'))) {
        //$(this).closest('.country > .countrybar').removeClass('active');
        checkElement.slideUp('fast');
    }

    if((checkElement.is('.country > .countrycontent')) && (!checkElement.is(':visible'))) {
        //$('.country > .countrycontent:visible').slideUp('fast');
        checkElement.slideDown('fast');
    }

    if (checkElement.is('.country > .countrycontent')) {
        return false;
    } else {
        return true;    
    }
});
$('.countrycontent > .leaguebar').click(function() {

    var checkElement = $(this).next();

    $('.countrycontent > .leaguebar').removeClass('active');
    $(this).closest('.countrycontent > .leaguebar').addClass('active'); 

    if((checkElement.is('.countrycontent > .leaguecontent')) && (checkElement.is(':visible'))) {
        $(this).closest('.countrycontent > .leaguebar').removeClass('active');
        checkElement.slideUp('fast');
    }

    if((checkElement.is('.countrycontent > .leaguecontent')) && (!checkElement.is(':visible'))) {
        $('.countrycontent > .leaguecontent:visible').slideUp('fast');
        checkElement.slideDown('fast');
    }

    if (checkElement.is('.countrycontent > .leaguecontent')) {
        return false;
    } else {
        return true;    
    }
});