mouseover/mouseout的Ext.toolbar隐藏打开menu
来源:互联网 发布:志鸿优化网答案下载 编辑:程序博客网 时间:2024/05/18 02:17
/*!
* Ext JS Library 3.2.1
* Copyright(c) 2006-2010 Ext JS, Inc.
* licensing@extjs.com
* http://www.extjs.com/license
*/
Ext.onReady(function(){
Ext.QuickTips.init();
if(!!window.find){
HTMLElement.prototype.contains = function(B){
return this.compareDocumentPosition(B) - 19 > 0;
};
}
var tb = new Ext.Toolbar();
tb.render('toolbar');
var menu = new Ext.menu.Menu({
items: [{
text: 'AAA',
},
{
text: 'BBB',
}
],
listeners : {
mouseout : function(obj,e){
if(!e.getRelatedTarget().contains(e.getTarget()) && !obj.getEl().contains(e.getRelatedTarget())){
obj.hide(obj);
}
else if(e.getRelatedTarget().contains(obj.getEl().dom)){
obj.hide(obj);
}
}
}
});
tb.add({
text:'Button w/ Menu',
iconCls: 'bmenu', // <-- icon
menu: menu, // assign menu by instance
listeners : {
mouseover : function (obj,e) {
if(!obj.menu.isVisible()){
obj.showMenu();
}
},
mouseout : function (obj, e){
if(!e.getRelatedTarget().contains(e.getTarget())&& !menu.getEl().contains(e.getRelatedTarget())){
//下面这句if语句,是判断鼠标是否移动到子菜单上。
var subHtml = Ext.get(e.getTarget()).dom.innerHTML;
if (subHtml.indexOf("x-menu-focus") != -1
|| subHtml.indexOf("x-menu-list") != -1
|| subHtml.indexOf("x-menu-list-item") != -1
|| subHtml.indexOf("x-menu-item") != -1){
return;
}
}
obj.hideMenu();
}
}
});
tb.add({
text:'test2',
listeners : {
mouseover : function (obj,e) {
if(!obj.menu.isVisible()){
obj.showMenu();
}
},
mouseout : function (obj, e){
if(!e.getRelatedTarget().contains(e.getTarget())&& !obj.menu.getEl().contains(e.getRelatedTarget())){
//下面这句if语句,是判断鼠标是否移动到子菜单上。
var subHtml = Ext.get(e.getTarget()).dom.innerHTML;
if (subHtml.indexOf("x-menu-focus") != -1
|| subHtml.indexOf("x-menu-list") != -1
|| subHtml.indexOf("x-menu-list-item") != -1
|| subHtml.indexOf("x-menu-item") != -1){
return;
}
}
obj.hideMenu();
}
} ,
menu: new Ext.menu.Menu({
items: [{
text: 'AAA',
}],
listeners : {
mouseout : function(obj,e){
if(!e.getRelatedTarget().contains(e.getTarget()) && !obj.getEl().contains(e.getRelatedTarget())){
obj.hide(obj);
}
else if(e.getRelatedTarget().contains(obj.getEl().dom)){
obj.hide(obj);
}
}
}
}),
})
tb.doLayout();
});
* Ext JS Library 3.2.1
* Copyright(c) 2006-2010 Ext JS, Inc.
* licensing@extjs.com
* http://www.extjs.com/license
*/
Ext.onReady(function(){
Ext.QuickTips.init();
if(!!window.find){
HTMLElement.prototype.contains = function(B){
return this.compareDocumentPosition(B) - 19 > 0;
};
}
var tb = new Ext.Toolbar();
tb.render('toolbar');
var menu = new Ext.menu.Menu({
items: [{
text: 'AAA',
},
{
text: 'BBB',
}
],
listeners : {
mouseout : function(obj,e){
if(!e.getRelatedTarget().contains(e.getTarget()) && !obj.getEl().contains(e.getRelatedTarget())){
obj.hide(obj);
}
else if(e.getRelatedTarget().contains(obj.getEl().dom)){
obj.hide(obj);
}
}
}
});
tb.add({
text:'Button w/ Menu',
iconCls: 'bmenu', // <-- icon
menu: menu, // assign menu by instance
listeners : {
mouseover : function (obj,e) {
if(!obj.menu.isVisible()){
obj.showMenu();
}
},
mouseout : function (obj, e){
if(!e.getRelatedTarget().contains(e.getTarget())&& !menu.getEl().contains(e.getRelatedTarget())){
//下面这句if语句,是判断鼠标是否移动到子菜单上。
var subHtml = Ext.get(e.getTarget()).dom.innerHTML;
if (subHtml.indexOf("x-menu-focus") != -1
|| subHtml.indexOf("x-menu-list") != -1
|| subHtml.indexOf("x-menu-list-item") != -1
|| subHtml.indexOf("x-menu-item") != -1){
return;
}
}
obj.hideMenu();
}
}
});
tb.add({
text:'test2',
listeners : {
mouseover : function (obj,e) {
if(!obj.menu.isVisible()){
obj.showMenu();
}
},
mouseout : function (obj, e){
if(!e.getRelatedTarget().contains(e.getTarget())&& !obj.menu.getEl().contains(e.getRelatedTarget())){
//下面这句if语句,是判断鼠标是否移动到子菜单上。
var subHtml = Ext.get(e.getTarget()).dom.innerHTML;
if (subHtml.indexOf("x-menu-focus") != -1
|| subHtml.indexOf("x-menu-list") != -1
|| subHtml.indexOf("x-menu-list-item") != -1
|| subHtml.indexOf("x-menu-item") != -1){
return;
}
}
obj.hideMenu();
}
} ,
menu: new Ext.menu.Menu({
items: [{
text: 'AAA',
}],
listeners : {
mouseout : function(obj,e){
if(!e.getRelatedTarget().contains(e.getTarget()) && !obj.getEl().contains(e.getRelatedTarget())){
obj.hide(obj);
}
else if(e.getRelatedTarget().contains(obj.getEl().dom)){
obj.hide(obj);
}
}
}
}),
})
tb.doLayout();
});
- mouseover/mouseout的Ext.toolbar隐藏打开menu
- Ext.Toolbar和Ext.Menu的使用
- Ext.button/menu/toolbar
- Toolbar Menu的显示与隐藏
- mouseover、mouseout停止事件冒泡的解决方案
- mouseover、mouseout停止事件冒泡的解决方案
- mouseover、mouseout停止事件冒泡的解决方案
- 鼠标事件的mouseOver,rollOver,mouseOut,rollOut
- mouseover,mouseout,mouseenter,mouseleave的区别
- mouseover/mouseout和mouseenter/mouseleave的区别
- mouseover与mouseout的差异与联系
- mouseenter、mouseleave和mouseout、mouseover的区别
- 火狐FireFox兼容mouseover,mouseout的解决方案
- hover、mouseover&mouseout
- mouseover和mouseout区别
- JQuery mouseout,mouseover事件
- toolbar上menu菜单的显示与隐藏
- $(document).ready(function(){ $("#usercenter .menu").mouseover(function(){ $(this).addClass("over");}).mouseout(function(){ $
- CG快报 2011.10.23
- 在window xp下安装Tornado
- 关闭exolab castor 日志
- Android系统架构
- VxWorks应用开发基本步骤和函数taskPriorityGet()
- mouseover/mouseout的Ext.toolbar隐藏打开menu
- IDictionary 泛型接口
- z
- Dijkstra算法
- 得到鼠标指向的物品
- 使用GNU C正则表达式
- 无题
- 三个人干五个人的活,拿四到四点五个人的工资?!
- 求助