1

私はtablesorter.jsを使用しており、tbody用の水平スクロールバーがあり、jqueryを使用してtbodyのスクロール位置とともにヘッダーを水平方向にスクロールしています。

私が直面している問題は、任意の量をスクロールしてからフィールドの並べ替えをクリックすると、IEではtbodyが最初の0 scrollLeft(0)の位置に戻り、Firefoxではtbody全体がスクロールの角度まで位置を左にシフトすることです。距離、それは意図したようにグーグルクロームで動作します。

これは、水平方向にスクロールした後にのみ発生します。

以下は、ヘッダーがtbodyでスクロールするために使用しているjqueryバインドです。

      $("tbody").bind('scroll', function () {
            var myScroll = $(this).scrollLeft();
            $(".fixedHeader").scrollLeft(myScroll);
        });

私はこれを使って問題を解決しようとしていますが、まだ運がありません。

        $("#scrollTable th span").bind('click', function() {
            var currentScroll = $(".fixedHeader").scrollLeft();
            $("tbody").scrollLeft(currentScroll);
4

1 に答える 1

1

ここでの問題は、tablesorter.js で Knockout.js を使用しようとしていて、それらが競合していたことです。Knockout.js は MVVM パターンを使用し、tablesorter はソート イベントでビューを更新します。そのため、両方がビューを制御しようとしていたため、不安定な動作が発生していました。

于 2013-02-24T04:40:48.727 に答える