0

Menu と MenuItems をカスタマイズする方法を誰かに説明してもらえますか? カーソルがウィジェットの上にない場合、ホバリングが消えないことを願っています。つまり、MenuItem をクリックした後、選択してホバーする必要があります。そして、別のアイテムをクリックするまで、選択したままホバーしておく必要があります。これはですが、どのように機能するかわかりません。

少し更新: 私の英語で申し訳ありません。おそらく、問題の説明が不十分だったのでしょう。 選択されたままにならない menuItem をクリックしたときのを見てください(つまり、マウスカーソルが別のボタンの上にある場合、選択は消えます)。 次に、「コメディ」、「ドラマ」、「ロマンス」などのボタンをクリックしたときのを見て ください。マウスカーソルがクリックされたボタンの上になくても。それが私が達成したいことです

4

1 に答える 1

0

あなたの質問は明確ではありません:

"カーソルがウィジェット上にない場合、ホバリングは消えませんでした。つまり、MenuItem をクリックした後、選択してホバリングする必要があります。別のアイテムをクリックするまで、選択したままホバリングしておく必要があります。 "

「カーソルがウィジェットの上にない場合、ホバリングは消えませんでした。」はすべての Menu と menuItem で正しいですが、ポップアップ メニューはすべて、クリックすると消えます。あなたが言及したメニューテストページから、選択をクリックした後、ポップアップメニューがそこに保持されることはありませんでした.

しかし、passivePopupDelay 機能のようなものを探している場合、それは dojo1.9 の新しい追加機能です。Dojo 1.9のリリースノートはこちら

*また、MenuBars (および Menus) に新しい passivePopupDelay プロパティがあり、有限の値に設定すると、単にメニューにカーソルを合わせるだけでドロップダウンが開きます。通常、ユーザーはメニューをクリックしてドロップダウン メニューを表示する必要があります。*

編集:更新された質問に基づいて、ドキュメントからの情報を次に示します

「選択/アクティブ」とは、選択されたタブの意味であり、マウスまたはキーボードによって制御されます。実装的には、MenuItem にフォーカスがあるか、その MenuItem のサブメニューにフォーカスがあることを意味します。 Menu/MenuBar domNode には dijitMenuPassive/dijitMenuActive クラスがあり、メニューにフォーカスがあるかどうかに基づいてホバーの CSS ルールをカスタマイズできます。メニューがフォーカスされると、dijitMenuSelected 効果が優先されて dijitMenuHover 効果が無効になり、ユーザーがマウスを「ファイル」の上に移動した後、キーボードの矢印を使用して「編集」MenuBarItem. (これはツンドラ/ニヒロ/ソリアの設定であり、必要に応じて変更できます。)

これに従って、自分のコードをDojo メニュー テスト ページのソース コードと比較できます。

于 2013-09-27T15:21:10.173 に答える