4

これは私のデモです:http://jsfiddle.net/michelejs/PeS2D/560/

<li>最初のドラッグ可能を停止するにはどうすればよいですか?

$(document).ready(function(e) {
$('li').removeClass('ui-corner-bottom');
$('ul')
    .addClass('ui-corner-top')
    .removeClass('ui-corner-all')
    .sortable({
        'containment': 'parent',
        'opacity': 0.6,
        update: function(event, ui) {
            alert("dropped");
        }
    });
});​

どうもありがとう。

4

5 に答える 5

5

items次のプロパティを使用できます。

$(document).ready(function(e) {
    $('li').removeClass('ui-corner-bottom');
    $('ul')
        .addClass('ui-corner-top')
        .removeClass('ui-corner-all')
        .sortable({
            items: 'li:not(:first)',
            'containment': 'parent',
            'opacity': 0.6,
            update: function(event, ui) {
                console.log(ui)

            }
        });
});

http://jsfiddle.net/ppRJL/

于 2012-11-15T13:33:42.603 に答える
5

ウィジェットメソッドitemsでこのオプションを使用できます。.sortable()jQueryセレクターと組み合わせると、gt()探しているものを簡単に取得できます。

これは私のために働きます(jsFiddleの例):

$(document).ready(function(e) {
    $('li').removeClass('ui-corner-bottom');
    $('ul')
        .addClass('ui-corner-top')
        .removeClass('ui-corner-all')
        .sortable({
            'items': '>li:gt(1)',
            'containment': 'parent',
            'opacity': 0.6,
            update: function(event, ui) {
                alert("dropped");
            }
        });
});​
于 2012-11-15T13:36:14.490 に答える
2

これを試して。 http://jsfiddle.net/PeS2D/561/

最初のliにheaderというクラスを追加すると、という関数があります。cancel

クリックを節約するには:

[キャンセル]セレクターに一致する要素から開始した場合にソートを防止します。コード例:キャンセルオプションを指定してソート可能ファイルを初期化します。

$( ".selector" ).sortable({ cancel: "a,button" });

初期化後、キャンセルオプションを取得または設定します。

// getter
var cancel = $( ".selector" ).sortable( "option", "cancel" );

// setter
$( ".selector" ).sortable( "option", "cancel", "a,button" );
于 2012-11-15T13:29:20.957 に答える
1

ドキュメントを読むだけです:http://api.jqueryui.com/sortable/#option-items

このitemsオプションを使用すると、sortables要素のセレクターを指定できます。

于 2012-11-15T13:29:27.687 に答える
1

フィドル: http: //jsfiddle.net/PeS2D/562/

このように設定できます

$(document).ready(function(e) {
  $('li').removeClass('ui-corner-bottom');
  $('ul')
    .addClass('ui-corner-top')
    .removeClass('ui-corner-all')
    .sortable({
        'containment': 'parent',
        'opacity': 0.6,
        update: function(event, ui) {
            alert("dropped");
        },
    items: 'li[id!=heading]'  
    });
});​

id次に、最初のliにを追加します

 <li data-role="list-divider" role="heading" id="heading">Re-order</li>
于 2012-11-15T13:33:24.743 に答える