運用sortable.js開發一個可以拖拽tab和tab內容,以及互換tab裏面的內容的效果

描述:運用sortable.js開發一個可以拖拽tab和tab內容,以及互換tab裏面的內容的效果
tab之間可以拖拽;每單個tab裏面的內容可以拖拽換位置;tab之間的內容可以拖拽(第一個tab裏面的某個內容拖拽到其他的tab裏面)
引入文件:
<link rel="stylesheet" href="jquery-ui.css"> <script src="//code.jquery.com/jquery-1.9.1.js"></script> <script src="jquery-ui.js"></script>
<style>
    #sortable1 li, #sortable2 li, #sortable3 li { margin: 0 5px 5px 5px; padding: 5px; font-size: 1.2em; width: 120px; }
</style>
<script>
    $(function() {
        $( "#sortable1, #sortable2, #sortable3" ).sortable().disableSelection();
        $( ".tab-list" ).sortable().disableSelection();

        var $tabs = $( "#tabs" ).tabs();

        var $tab_items = $( "ul:first li", $tabs ).droppable({
            accept: ".connectedSortable li",
            hoverClass: "ui-state-hover",
            drop: function( event, ui ) {
                var $item = $( this );
                var $list = $( $item.find( "a" ).attr( "href" ) ).find( ".connectedSortable" );
                ui.draggable.hide( "slow", function() {
                    $tabs.tabs( "option", "active", $tab_items.index( $item ) );
                    $( this ).appendTo( $list ).show( "slow" );
                });
            }
        });

        var $tab_items1 = $($tabs ).droppable({
            accept: ".tab-list li",
            hoverClass: "ui-state-hover",
            drop: function( event, ui ) {
                var $item = $( this );
            }
        });
    });

</script>


html代碼:
<div id="tabs">
    <ul class="tab-list">
        <li class="content-tab"><a href="#tabs-1">Nunc tincidunt</a></li>
        <li class="content-tab"><a href="#tabs-2">Proin dolor</a></li>
        <li class="content-tab"><a href="#tabs-3">3333333</a></li>
    </ul>
    <div id="tabs-1">
        <ul id="sortable1" class="connectedSortable ui-helper-reset">
            <li class="ui-state-default">Item 1</li>
            <li class="ui-state-default">Item 2</li>
            <li class="ui-state-default">Item 3</li>
            <li class="ui-state-default">Item 4</li>
            <li class="ui-state-default">Item 5</li>
        </ul>
    </div>
    <div id="tabs-2">
        <ul id="sortable2" class="connectedSortable ui-helper-reset">
            <li class="ui-state-highlight">Item 1</li>
            <li class="ui-state-highlight">Item 2</li>
            <li class="ui-state-highlight">Item 3</li>
            <li class="ui-state-highlight">Item 4</li>
            <li class="ui-state-highlight">Item 5</li>
        </ul>
    </div>
    <div id="tabs-3">
        <ul id="sortable3" class="connectedSortable ui-helper-reset">
            <li class="ui-state-error">1111 1</li>
            <li class="ui-state-error">2222 2</li>
            <li class="ui-state-error">3333 3</li>
            <li class="ui-state-error">4444 4</li>
            <li class="ui-state-error">5555 5</li>
        </ul>
    </div>
</div>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章