2

JSCanvasオブジェクトのポップアップメニューでdijit/MenuItemを使用しました。ユーザーがキャンバスを右クリックすると、メニューが表示され、ユーザーが選択した場所に基づいて一部のアイテムが無効になります。したがって、Canvasのonmousedonwイベントをコーディングして、アイテムを無効にします。

右クリックしてメニュー項目が有効から無効に変更された場合、マウスをその上に移動するまでメニューの項目は通常の状態のまま表示され、その後灰色で無効として表示されることを除いて、すべて正常に機能します。無効状態を変更した後、メニューが表示されたときにすぐにグレー表示されるように、メニュー項目を何らかの方法で「更新」する方法はありますか?

メニューのHTML

<ul dojoType="dijit/Menu" id="menu" style="display: none;border-radius:3px;">
<div dojoType="dijit/MenuItem" id="Popup_Cut"><span>Cut</span></div></ul>

無効化のためのJS

function handleMouseDown(event) {

 if(...)
     dijit.byId("Popup_Cut").disabled = true;
}
4

1 に答える 1

1

プロパティdisabledを使用するset代わりに、メソッドを使用してください。

dijit.byId('Popup_Cut').set("disabled",true);

同じ問題がありましたが、これでうまくいきました。

詳細情報set: http://dojotoolkit.org/reference-guide/1.8/dijit/info.html#set-and-get

于 2013-01-16T14:17:37.263 に答える