Ext.menu.Menu定位

时间:2011-05-11 19:01:11

标签: javascript html css extjs

我正在尝试使用Ext.menu.Menu排列我创建的菜单。如下所示,菜单在其父级右侧显示 1像素

The menu isn't quite right

将这种完美对齐的最佳方法是什么?我简要地研究了getPostion()setPosition(),我不确定这是否正确。

我的菜单代码很基本:

var userMenu = new Ext.menu.Menu({
    id: 'userMenu',
    width: 120,
    height: 70,
    items: [
        {
            text: 'My Settings',
            handler: settingsHandler                    
        },
        {
            text: 'Sign out',
            handler: signoutHandler         
        }   
        ]
    });     

       var menuHandler = function(e) { 
            userMenu.show('parent-menu');    
       }; 

       Ext.get('parent-menu').on('click',menuHandler);

我可以在这里添加任何内容吗?提前谢谢!

2 个答案:

答案 0 :(得分:0)

现在,能够在显示菜单后使用jQuery移动它:

        var menuLeft = $('#userMenu').position().left;
        $('#userMenu').css('left',(menuLeft-1)+"px");

答案 1 :(得分:0)

为什么要调用show方法?
您可以执行以下操作,假设您的菜单位于工具栏上。

var userMenu = new Ext.menu.Menu({
  id: 'userMenu',
  width: 120,
  height: 70,
  items: [
    {
        text: 'My Settings',
        handler: settingsHandler                    
    },
    {
        text: 'Sign out',
        handler: signoutHandler         
    }   
  ]
});

    /*Define a toolbar */
    tbar: [{
        text: 'Menu',
        menu: userMenu /*no need to call userMenu.show()*/
    }]