Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何限制可折叠项保持展开状态,除非单击要展开的其他可折叠项而不是可折叠项本身_Javascript_Html_Jquery Ui_Jquery Mobile_Jquery Mobile Collapsible - Fatal编程技术网

Javascript 如何限制可折叠项保持展开状态,除非单击要展开的其他可折叠项而不是可折叠项本身

Javascript 如何限制可折叠项保持展开状态,除非单击要展开的其他可折叠项而不是可折叠项本身,javascript,html,jquery-ui,jquery-mobile,jquery-mobile-collapsible,Javascript,Html,Jquery Ui,Jquery Mobile,Jquery Mobile Collapsible,我正在一个移动网站上工作,并使用jquerymobile。 我手风琴里有4件可折叠的东西。我想有一个项目保持扩展。如果单击展开的项目,它将折叠(我不想折叠此项目)。 如果单击任何其他折叠的项目,则最后一个展开的项目将折叠(没关系) 我将感谢你的帮助。手风琴类别的动态javascript代码如下所示: function create-accordion(categories) { category_array = categories; jQuery.eac

我正在一个移动网站上工作,并使用jquerymobile。 我手风琴里有4件可折叠的东西。我想有一个项目保持扩展。如果单击展开的项目,它将折叠(我不想折叠此项目)。 如果单击任何其他折叠的项目,则最后一个展开的项目将折叠(没关系)

我将感谢你的帮助。手风琴类别的动态javascript代码如下所示:

function create-accordion(categories)
    {
        category_array = categories;
        jQuery.each(categories, function( index, value )
        {
            var div =  '<div data-role="collapsible"  class="custom-collapsible"  ';
            if(index == 0)
                div += 'data-collapsed="false"';
            div += '>';

            div += '<h3 style:"padding:0px; margin:0px;"> ' + value.name + '</h3>\
                        <div class= "collapsable-limit-theme">\
                            <div data-role="content" style="padding:0px; margin:0px;">\
                                <div class="ui-grid-c, Grid" id="Grid' + value.id + '">\
                                </div>\
                            </div>\
                        </div>\
                    </div>';

            $($('#accord'), this).append(div);
        });

        $( "#accord" ).collapsibleset( "refresh" );
    }
功能创建手风琴(类别)
{
类别\数组=类别;
每个(类别、函数(索引、值)
{
var div='';
div+=''+value.name+'\
\
\
\
\
\
\
';
$($('#accord'),this.append(div);
});
$(“#协议”).可折叠集(“刷新”);
}
还有html代码

<div id="accord" data-role="collapsible-set" border-radius="0px" >
        </div>


关于

您需要收听单击
.ui可折叠标题切换
,并检查单击的可折叠标题是否已折叠或展开。如果可折叠文件被折叠,它将有一个类
。ui可折叠文件将被折叠

如果单击展开的可折叠文件,它将通过返回false来防止自身折叠,否则,它将折叠所有展开的文件

$(".ui-collapsible-heading-toggle").on("click", function () {

    // clicked collaspible
    var collapsible = $(this).closest(".ui-collapsible");

    // check if its whether collapsed
    if (collapsible.hasClass("ui-collapsible-collapsed")) {

        // collapse expanded collapsibles
        $(".ui-collapsible").not(collapsible).trigger("collapse");
    } else {
        // keep expanded clicked collapsible as is
        return false;
    }
});