0

如果里面没有 li 元素,如何销毁 jquery ui 手风琴?这种情况是我在我的手风琴 li 元素中,点击时用户可以删除这些元素。如果用户已经删除了所有现有元素,则应销毁手风琴。

html

<div id="catalog">
<h4 id="my_id" ><a href="#"></a></h4>       
<div>
<ul class="ul_class">
<li class="ui-state-default ui-corner-all" id="li_id1">element_1
<span id="add" class="ui-icon ui-icon-circle-plus" style="float:right"></span>
</li>
<li class="ui-state-default ui-corner-all" id="li_id2">element_1
<span id="add" class="ui-icon ui-icon-circle-plus" style="float:right"></span>
</li>
</ul>
</div>
</div>

jQuery

jQuery("span#add").live("click", function(){
    html = html.replace('<span style="float:right" id="add" class="ui-icon ui-icon-circle-plus">','<span style="float:right" id="remove" class="ui-icon ui-icon-circle-minus">');
    var param =  $(this).parent().closest('li').attr("id");

    jQuery(this).parent().animate(
            {
                'margin-left':'1000px'
            },1000,
            function(){
                var ul_class = $(this).parent().attr('class');
                $(this).slideUp('fast');              
                $("ul."+ ul_class + "_clone").append('<li id="'+ param +'">' + html + '</li>');
                $(this).remove();

            }
            );
});
4

2 回答 2

2
if ( ! $('#myAccordion').find('li').length ) {
    $('#myAccordion').accordion('destroy');
}
于 2013-03-18T19:51:52.127 回答
0

要销毁 jQuery UI 小部件,请选择初始化它的元素,然后使用参数“destroy”调用插件。

$("#accordion").accordion("destroy");
于 2013-03-18T19:52:49.460 回答