3

jquery sortableには次の問題があります。

の要素のコンテナがありますoverflow-x: scroll。並べ替え可能なアイテム ( display: block) と (幅 > コンテナーの幅) が含まれています。

コンテナが左端までスクロールされていれば、ソートに問題はありません。

しかし、右にスクロールすると、ドラッグを開始すると、ソート可能な要素が右にジャンプします。その結果、要素は右端にあります..しかし、マウスはドラッグ中に要素の左端にあります..

親がスクロールされているため、jqueryui が要素の初期オフセットを正しく取得できないようです。

しかし、興味深いのは、これが最初のドラッグでのみ発生することです。2 回目にドラッグしようとすると、正しく配置されます。そして再び..ページをリロードすると、最初のドラッグで間違った位置が設定されます..また、changeイベントが発生すると、要素は適切な正しい位置に戻ります..したがって、問題は最初のドラッグ中にも修正できます.

問題を説明するビデオを作成しました: http://youtu.be/h1mBLAmYtgk

var conf = {
    helper: function (e, ui) {
        var helper_scope;
        helper_scope = ui.scope();
        helper_scope.$apply(function () {
            helper_scope.project.open = false;
        });
        return ui;
    },
    opacity: 0.4,
    tolerance: 'pointer',
    forcePlaceholderSize: true
};
elm.sortable(conf);
4

0 に答える 0