javascript - 同侧的两个菜单

标签 javascript extjs sencha-touch-2

我正在寻找我想做的事情的示例或暗示如何做。 我想从 Sencha Touch 2 视口(viewport)的一侧创建菜单,然后创建菜单 将此菜单替换为其他菜单。当我打电话时

 Ext.Viewport.setMenu(menu, {
     side: 'left'
 });

它工作正常,但在我使用其他菜单调用 setMenu 后,新附加菜单将替换旧菜单,这就是想法。但是当我想返回其他菜单时,问题就出现了。有没有办法将旧菜单的实例保留在某处?我只是不想再次重新创建以前的菜单。我尝试用容器替换第二个菜单,但它不像菜单那么灵活。

最佳答案

我无法重现您的问题。我写了一个 Fiddle 并创建了 3 个菜单。我显示和隐藏它们没有任何问题。我什至可以使用 Ext.Viewport.down() 选择菜单。

代码来自Sencha Fiddle :

var menu1 = Ext.create('Ext.Menu', {
    itemId: 'menu1',
    items: [{
        text: 'MenuItem 1',
        iconCls: 'settings'
    }]
});

var menu2 = Ext.create('Ext.Menu', {
    itemId: 'menu2',
    items: [{
        text: 'MenuItem 2',
        iconCls: 'compose'
    }]
});

var menu3 = Ext.create('Ext.Menu', {
    itemId: 'menu3',
    items: [{
        text: 'MenuItem 3',
        iconCls: 'star'
    }]
});



Ext.application({
    name: 'Fiddle',

    launch: function() {
        var me = this,
            menuus = new Array(menu1, menu2, menu3);

        me.showMenu(menu1);

        Ext.defer(function() {
            me.showMenu(menu2);
        }, 1000);

        Ext.defer(function() {
            me.showMenu(menu3);
        }, 2000);

        Ext.defer(function() {
            me.showMenu(menu1);
        }, 3000);

        Ext.defer(function() {
            var menuFromViewport = Ext.Viewport.down('#menu2');
            me.showMenu(menuFromViewport);
        }, 4000);
    },

    showMenu: function(menu) {        
        Ext.Viewport.hideMenu('left');

        Ext.Viewport.setMenu(menu, {
            side: 'left'
        });

        Ext.Viewport.showMenu('left');
    }
});

关于javascript - 同侧的两个菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32638061/

相关文章:

javascript - 如何在 sencha touch 中单击选择器字段中的 "done"按钮时在文本字段中显示值?

extjs - 是否可以使用同一模型拥有多个 hasMany 关系?

javascript - 用新文本替换大括号

javascript - ext.js 5.0.0 图片按钮

sencha-touch - 无法看到 Sencha touch 2 面板内的列表

extjs - 树格 : setting data root has no effect

javascript - ExtJS : button with action to json format

javascript - 使用 jQuery 动态插入 MathML

javascript - jQuery:将函数 self 添加到数组?

javascript - 在将函数定义为 Object.prototype 扩展或只是函数之前要考虑什么?