0

水平スクロール バーを手動で一番右に配置する関数を作成したいと思います。この効果を達成する方法を理解するのに苦労しています。私のものと同様の以前のスタックオーバーフローの質問 ( How do I scroll an ngGrid to show the current selection? ) がありましたが、解決策は ui-grid の古いバージョンである NgGrid でした。ユーザーが ngGrid バージョンを機能させるためのソリューションを投稿しました ( http://plnkr.co/edit/oyIlX9?p=preview )。

$scope.scrollTo = function() {
    var grid = $scope.gridOptions.ngGrid;
    grid.$viewport.scrollTop(grid.rowMap[$scope.index] * grid.config.rowHeight);
};

ui-grid に同じコードを使用しようとしましたが、この新しいバージョンには $viewport がないようです。私が取り組んでいることの例を見るためにプランカーを作成しました。水平スクロール バーは、最初は左端から始まります。一番右に移動するコードを書きたいと思います。

http://plnkr.co/edit/SJEoPxelB2HYHLsfZ768?p=preview

誰かが私を助けることができれば、それは素晴らしいことです:)

4

1 に答える 1

1

最新の ui-grid では、グリッドの scrollTo 関数を使用して、グリッドの右側にスクロールできます。

  $scope.gridApi.grid.scrollTo(data[0],{name:"col8"});

最初の引数はデータ行で、2 番目の引数は少なくとも列の名前を持つ列定義です。

http://plnkr.co/edit/KfaJti5BTnyvwjWRhtWe?p=previewが動作中のバージョンです。

于 2015-04-20T23:24:48.637 に答える