5

ここhttp://www.tablefixedheader.com/のjQueryプラグインを使用して、固定の見出し、並べ替え、その他の優れた機能を備えたおしゃれなテーブルを作成しています。今、私はjqGridも見てきましたが、これはばかばかしいほど素晴らしいように見えますが、データソースでいくつかのファンキーなことを行っており、jqGridでうまく機能する準備ができていないと思います。

とにかく、上司は私が作成したテーブルの最初の列を修正して、x軸をスクロールできるようにしたいと思っていますが、それでも最初の列は表示されます。このプラグインを変更してこの機能を提供するにはどうすればよいですか?

どんな助けでも大歓迎です

ありがとう

編集:

追加してみました:

th:first-child
{
    position        : relative; 
}
td:first-child
{
    position        : relative; 
}

「修正済み」であるだけでなく、この単純なソリューションよりも複雑なようです...

これを行うことには効果がありますが、それはそれほど楽しいことではありません。この変更を行うと、左側が静止したままになりますが、実際には下にスクロールできず、実際には機能していないようです。

編集2:

私はこのプラグインをいじくり回す能力に完全に自信はありませんが、以下に示すソリューションの実装を開始しました。とにかく、これがいじくり回しの現在の状態です:

更新を続けていきます...

this.offset.topがnullであるか、オブジェクトではないというエラーが表示されます...何とか、

このコードはdocument.readyに含まれています。

         var currentTop = 0;
         var currentLeft = 0;
         var currentWidth = 0;
         var currentHeight = 0;
         var currentContent = "";
         var currentDiv = "";
         var currentID = "";
         $('td:first-child').each(function (index) {
             currentTop = $(this).offset.top;
             currentLeft = $(this).offset.left;
             currentWidth = $(this).width;
             currentHeight = $(this).height;
             currentContent = $(this).html();
             currentID = "fixed_column_cell" + index;
             currentDiv = "<div class=\"fixed_column_cells\" id=\"" + currentID + "\">" + currentContent + "</div>";
             $('body').append(currentDiv);
             $('#' + currentID).offset({ top: currentTop, left: currentLeft });
             $('#' + currentID).width(currentWidth);
             $('#' + currentID).width(currentHeight);
         });
         $('fixed_column_cells').css('position', 'fixed');

現在立ち往生

4

2 に答える 2

2

興味深い問題。テーブルセル(TD)要素がこのように動作することを望んでいるとは思わないでしょう。やるべきことは、すべてのtd:first-childsをループし、それらのコンテンツをTDとオーバーラップする同じサイズのdivにコピーすることかもしれません。それらのdivを使用すると、正しく配置できます。

固有のテーブルセルの動作を伴う何かの制限に直面していると思います。

Pseduocode:

  • 最初の列のテーブルセルごと
  • 左上の位置を取得
  • 幅と高さを取得します
  • 同じ位置に同じサイズの新しいdivを作成する
  • コンテンツを新しいdivにコピーする
  • divを固定位置に設定
于 2012-06-27T17:33:58.987 に答える
0

固定ヘッダーのjqueryライブラリをすでに取得しているとのことですが。ただし、固定列とヘッダー用のライブラリがいくつかあります。私が使用したものの1つは、固定テーブルです。これを使用すると、左側の列と固定するヘッダーを設定できます。これがお役に立てば幸いです

于 2012-06-27T17:29:37.413 に答える