「已注销」 2014-08-10 08:36 采纳率: 0%
浏览 937

ext js 4.2.1 官网例子的多Tab效果是如何实现的?

链接:官网地址

CSDN移动问答

上图为链接页面部分截图,看一般的实现只有一个tab panel(点击结构树,内容在tab中显示),但是这里感觉有两个tab panel,即红色部分和黄色部分,当点击结构树时,可以再这两个tab panel之间灵活切换。

如果我描述的不够清楚,请点击官网地址仔细感受一下。

个人感觉这个设计效果太帅了,想知道是怎么实现的。

希望有大神能提供这个效果的示例代码。

iteye中有个人回答,不知道是不是:
左面是一个tab 每个里面一棵树。
右面是 N个tabpanel. 用card布局,根据左面的tab显示来控制右面的 tab的index。

我的追问是: Home同时跨越左边和右边两个区域 http://docs.sencha.com/extjs/4.2.1/# 是怎么弄的?

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-02 11:03
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    这个问题的答案其实很简单,就是通过使用Ext.Viewport对象,并且使用setActiveTab方法来设置当前激活的TabPanel。

    以下是一个简单的示例代码:

    <template>
        <div id="container">
            <button onclick="toggleTab()">Toggle Tab</button>
    
            <!-- Tab Panel -->
            <div class="tab-panel" style="display: none;">
                <div class="panel-content">Content of the first tab panel</div>
            </div>
    
            <!-- Second Tab Panel -->
            <div class="tab-panel" style="display: none;">
                <div class="panel-content">Content of the second tab panel</div>
            </div>
        </div>
    </template>
    
    <script>
        export default {
            data() {
                return {
                    activeTab: 'first',
                };
            },
            methods: {
                toggleTab() {
                    this.activeTab = (this.activeTab === 'first') ? 'second' : 'first';
                    this.setActiveTab(this.activeTab);
                },
                setActiveTab(tab) {
                    // Set the viewport to show the specified tab panel.
                    Ext.Viewport.setActiveTab(tab);
                }
            }
        };
    </script>
    

    在这个示例中,我们首先定义了一个名为toggleTab的方法,用于切换当前激活的TabPanel。然后,在setActiveTab方法中,我们将视口设置为当前激活的TabPanel。这样,每当用户点击按钮时,视口就会自动切换到相应的TabPanel。

    请注意,这个示例中的<div>元素并没有实际的内容,只是为了展示如何设置TabPanel的显示状态。实际上,你需要将这些元素替换为你自己的内容。

    评论

报告相同问题?