在鼠标悬停时为PopupMenuBarItem设置背景色

问题描述

| 寻找一点帮助找出如何更改背景和 鼠标悬停时在dijit.PopupMenuBarItem对象上的字体颜色。的 按住鼠标时,鼠标悬停时的认颜色当前为浅蓝色 在菜单栏中的“文件”上。我看过cssstateNodes,但我不认为这 是我要的东西。当前正在使用dojo 1.5.0当前...
dojo.require(\"dijit.MenuBar\");
dojo.require(\"dijit.MenuBarItem\");
dojo.require(\"dijit.PopupMenuBarItem\");
dojo.require(\"dijit.Menu\");
dojo.require(\"dijit.MenuItem\");
dojo.require(\"dijit.PopupMenuItem\");

var pMenuBar;
dojo.addOnLoad(function() {
  pMenuBar = new dijit.MenuBar({
    style: \"background-color: #495569\"
    });

  var pSubMenu = new dijit.Menu({});
  pSubMenu.addChild(new dijit.MenuItem({
    label: \"File item #1\"
    }));

  pMenuBar.addChild(new dijit.PopupMenuBarItem({
    label: \"File\",style: \"color: white\",popup: pSubMenu
    }));

  pMenuBar.placeAt(\"dojoMenu\");
  pMenuBar.startup();
});
谢谢您的帮助....     

解决方法

        弄清楚如何完成此任务:
var pSubMenu2 = new dijit.Menu({
  onFocus: function() {
    var obj = dijit.byId(\'editID\');
    if (obj) {
      obj.attr(\'style\',\'color: black\');
    } 
  },onBlur: function() {
    var obj = dijit.byId(\'editID\');
    if (obj) {
      obj.attr(\'style\',\'color: white\');
    } 
  },onMouseDown: function() {
    var obj = dijit.byId(\'editID\');
    if (obj) {
      obj.attr(\'style\',\'color: white\');
    } 
  }
});

pSubMenu2.addChild(new dijit.MenuItem({
  onMouseOver: function() {
    var obj = dijit.byId(\'editID\');
    if (obj) {
      obj.attr(\'style\',\'color: black\');
    }
  },label: \"Edit item #1\"
  }));

pSubMenu2.addChild(new dijit.MenuItem({
  onMouseOver: function() {
    var obj = dijit.byId(\'editID\');
    if (obj) {
      obj.attr(\'style\',label: \"Edit item #2\"
  }));

pMenuBar.addChild(new dijit.PopupMenuBarItem({
  id: \"editID\",label: \"Edit\",style: \"color: white\",onMouseOver: function() {
    this.attr(\'style\',\'color: black\');
  },onMouseLeave: function() {
    this.attr(\'style\',\'color: white\');
  },popup: pSubMenu2
  }));