1

ツリーで次の動作を実現したいと思います。

ノードが展開可能であることを示すコーナー アイコンを誰かが選択すると、ノードが展開され、展開のみ (選択なし) されます。一方、誰かがノードを選択すると (つまり、ノードのテキストを 1 回クリックすると)、作成した特定のハンドラーが実行され、ノードが展開されないようにする必要があります。

これは、私のアプリケーションでは、ユーザーがツリーの要素を選択/クリックすると、その要素が html 内の別のリストに追加されるためです。選択したアイテムのリストを考えてみましょう。

言い換えれば:

  • 誰かがノードのテキストをワンクリックすると、ノードはまったく展開されず、私のハンドラーのみが実行されます。

  • それまでの間、誰かがノードの左隅にあるアイコン (実際にはノードが展開可能であることを示しています) をクリックすると、展開するだけで他には何もしたくありません。

要するに、ノードの選択とそれを展開するアクションを区別することは可能ですか。

4

1 に答える 1

1

に設定clickFolderModeすると、目的1の動作が得られます。

ノードが展開可能であることを示すコーナー アイコンを誰かが選択すると、ノードが展開され、展開のみ (選択なし) されます。一方、誰かがノードを選択すると (つまり、ノードのテキストを 1 回クリックすると)、作成した特定のハンドラーが実行され、ノードが展開されないようにする必要があります。

$("#tree").fancytree({
    clickFolderMode: 1 // 1:activate, 2:expand, 3:activate and expand
});

onSelectその後、およびonExpandイベント ハンドラーを使用して、ユーザーが実行したアクションに応じて必要なことを実行できるはずです。

于 2015-05-04T08:03:33.973 に答える