English 中文(简体)
上下文菜单未触发的上下文菜单
原标题:onMouseOut onMouseLeave event not triggered for context Menu

我正在创建一个动态上下文菜单, 正如预期的那样, 我希望当鼠标离开菜单框时关闭菜单。 我使用了 :

var dlg = new dijit.Menu({                   
         onMouseLeave: function(event){
        dijit.popup.close(dlg);
    }
});

但当我从外边出去时,盒子里什么都没有发生。如果我把同样的功能放进菜单项中,那么当我离开菜单项盒时,它就会关闭盒子。

有意见吗?

最佳回答

这是因为Menu没有在MouseLeave的句号上注册。

要手动做这个,你只需要做以下内容:(已经抽样测试,但应该有效)

var myconnects = []
var dlg = new dijit.Menu({                   
   destroy: function() {  // for a neat garbage collections, remove listeners
      var ch;
      while(ch = myconnects.pop()) ch.disconnect();
      this.inherited();
   }
   ...
});
myconnects.push(dojo.connect(dlg.domNode, "onmouseleave", dojo.hitch(dlg, function() {
    dijit.popup.close(this);
});
问题回答

暂无回答




相关问题
Get Dojo Radio Button Value?

I have an HTML form using dojo and have the following code for a radio button selection choice: dojo.require("dijit.form.RadioButton"); <link href="http://ajax.googleapis.com/ajax/libs/dojo/1....

is it possible to know if a dijit is displayed or not?

i have two divs on a page. each has several dijits. i have atoggle that shows only one div or the other. when i submit the form, i only want to validate the dijits that are in the div that is ...

dijit BorderContainer auto-grow

Is there a way to have a dijit.layout.BorderContainer auto-grow in height? I ve tried setting min-height: 200px; height: auto;, but it won t scale. I ve tried looking at the API, but that thing is a ...

Dojo Tabs as Custom Widgets

I ve created a number of widgets that are loaded as tab panes in a tabcontainer. Everything seems to work well, except I m getting different results when using my custom widgets vs. creating ...

What happened to Dojo DOH?

The Dojo Toolkit used to come with a testing facility called "Doh". It was in the /utils directory. Now when you download dojo-release-1.3.2 the /utils directory is nowhere to be found. Is Doh dead ...

热门标签