2017-10-06 11 views
1

私は、巨大なツリーコンポーネント(スクロール可能)と、選択したノードを編集できる編集コンポーネントを持つページを持っています。編集ウィンドウで選択したノードを編集した後、ツリーコンポーネントを更新するajaxイベントがあります。JSFを使用して、プライムフェイスでSelected treenodeに自動的にスクロールする方法はありますか?

私の問題は、ツリーが100%更新されますが、選択されたノードが現在表示外にスクロールされていることです。選択したノードにスクロールするにはどうしたらいいですか?ツリーを完全に更新するのではなく、ツリー内の選択したノードだけを更新する方法はありますか?私はまったく同じような状況に遭遇した

答えて

0

は、ここに私の解決策には、JavaScriptをもとに、です:

$('.scrollable-tree-container').each(function(index) { 
    var position = $(this).find('.ui-state-highlight').position(); 
    if (typeof position != 'undefined') { 
     $(this).scrollTop(position.top + $(this).scrollTop() - 300); 
    } 
}); 

それが動作しない方法は?

  • 強調表示されたノードのためのスクロールバーに
  • ルックを提供するコンテナを指定し
  • がその位置を読み、スクロールが
あなたは、他のコンポーネントへの副作用を回避するために、追加のセレクタを追加したい場合があります

。私は800pxの総樹高を持っていたのでここで300pxを引いた。このようにして、選択されたノードは途中にあります(上にはありません)。 未定義チェックは、関数の呼び出し時に常に1つのノードが選択されていると確信できない場合にのみ必要です。

+0

私はJSFを使用してツリーを作成しています。私のjsfにこの行を追加した場所は何ですか? – Raja

関連する問題