销毁jquery ui手风琴

时间:2013-03-18 19:48:15

标签: jquery user-interface

如果我内部没有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();

            }
            );
});

2 个答案:

答案 0 :(得分:2)

if ( ! $('#myAccordion').find('li').length ) {
    $('#myAccordion').accordion('destroy');
}

答案 1 :(得分:0)

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

$("#accordion").accordion("destroy");