1

「dijit.layout.AccordionPane.selected」を使用して、特定のAccordionPaneにフォーカスがある(選択されている)かどうかを確認しようとしました。ただし、AccordionPane.selectedプロパティは、AccordionPaneが選択されると「True」に設定され、AccordionPane.selectedは、他のdijit.layout.AccordionPaneが選択されても「True」のままになります。つまり、3つのAccordionPanesがある場合、3つすべてをクリックすると、3つすべてのAccordionPane.selectedプロパティが「True」になります。これはバグですか、それとも現在選択されている(フォーカスされている)AccordionPaneを判別する他の方法がありますか?前もって感謝します!

デビッド

4

2 に答える 2

2

dijit.layout.AccordionContainer現在どれが選択されているかを判断するには、これら 3 つすべてを含むを使用する必要がありますdijit.layout.AccordionPane

dijit.layout.AccordionContainerのプロパティを使用selectedChildWidgetして、現在選択されているものを取得できますdijit.layout.AccordionPane

于 2010-05-13T01:38:17.680 に答える
1

AccordionPaneは で囲まれていAccordionContainerます。ペインが選択されたときにDojo の pub-sub 通信チャネルを使用してアドバタイズするAccordionContainerextends 。トピックにサブスクライブして、新しいペインが選択されるたびに通知を受け取ります。コンテナ要素のウィジェット ID です。StackContainer[widgetId]-selectChild[widgetId]

dojo.subscribe("[widgetId]-selectChild", function(pane){
    console.log("A new pane was selected:", pane);
});
于 2010-05-13T11:29:18.393 に答える