0

我正在尝试附加将操纵 JQM 组件的事件,但是一旦我引用了该组件,我不知道我可以对其应用什么操作。例如,使用新的可折叠列表视图“,如何通过单击按钮折叠所有项目?这是可折叠列表视图的演示:http: //jquerymobile.com/demos/1.2.0-alpha.1/docs /lists/lists-collapsible.html

4

1 回答 1

1

对于可折叠的,您可以使用expandcollapse事件:

$('.ui-collapsible').trigger('expand');

例如,您可以根据当前状态折叠/展开 DOM 中的所有可折叠小部件,如下所示:

//attach the code to an event (click on a link)
$('a').on('click', function () {

    //cache all the widgets
    var $all       = $('.ui-collapsible');

    //iterate through each widget
    $.each($all, function () {

        //if the widget has the "collapsed" class, then expand it
        if ($(this).hasClass('ui-collapsible-collapsed')) {
            $(this).trigger('expand');
        } else {

          //otherwise collapse it
          $(this).trigger('collapse');  
        }
    });
});​

这是一个演示:http: //jsfiddle.net/HLEss/1/

这是一个示例可折叠小部件的 HTML,用于验证您是否可以通过“折叠”类进行选择:

<div data-role="collapsible" class="ui-collapsible ui-collapsible-collapsed">
    <h3 class="ui-collapsible-heading ui-collapsible-heading-collapsed">
        <a href="#" class="ui-collapsible-heading-toggle ui-btn ui-btn-up-c ui-fullsize ui-btn-icon-left ui-corner-top ui-corner-bottom ui-btn-active ui-btn-hover-null ui-btn-down-null" data-corners="false" data-shadow="false" data-iconshadow="true" data-wrapperels="span" data-icon="plus" data-iconpos="left" data-theme="null" data-mini="false">
            <span class="ui-btn-inner ui-corner-top ui-corner-bottom">
                <span class="ui-btn-text">Zero
                    <span class="ui-collapsible-heading-status"> click to expand contents</span>
                </span>
                <span class="ui-icon ui-icon-plus ui-icon-shadow">&nbsp;</span>
            </span>
        </a>
    </h3>
    <div class="ui-collapsible-content ui-collapsible-content-collapsed" aria-hidden="true">
        <p>Woohoo!</p>
    </div>
</div>

我希望这会有所帮助。

更新

以下是这些事件的文档(虽然很稀疏):http: //jquerymobile.com/demos/1.1.1/docs/content/content-collapsible-events.html

于 2012-08-09T18:59:55.010 回答