首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >YUI 3 Tabview访问

YUI 3 Tabview访问
EN

Stack Overflow用户
提问于 2013-07-24 17:48:14
回答 1查看 169关注 0票数 0

我用这种方式创建了一个tabview:

代码语言:javascript
复制
var tabview;
var Y = YUI({ insertBefore: 'my_css' });
Y.use('tabview', function (Y) {
    tabview = new Y.TabView({
    children: [{
        label: 'Suche',
        content: "<div id=\"tab1\"> </div>"
    }, {
        label: 'Objekt-Liste',
        content: "<div id=\"tab2\"> </div>"
    }, {
        label: 'Objekt-Detail',
        content: "<div id=\"tab3\"> </div>"
    }]
});

tabview.item(1).disable().on('selectedChange', function () {
    if (boolTab1) {
        return true;
    } else {
        return false;
    }
});

tabview.item(2).disable().on('selectedChange', function () {
    if (boolTab2) {
        return true;
    } else {
        return false;
    }
});
tabview.render('#tabs');
});

现在我想从外部访问我的tabview对象。例如,在加载时,此函数被调用:

代码语言:javascript
复制
function init() {

tabview.deselectAll();
tabview.selectChild(0);
this.name = "";
this.value = "";
boolTab1 = false;
boolTab2 = false;
tabview.item(1).disable();
tabview.item(2).disable();
requestSuche(this);
}

因此,这适用于FF完美无瑕。但是,我测试过的所有其他浏览器都不知道init()函数中的tabview对象。有趣的一点;在firefox中,当我删除顶部的'var tabview‘时,它也可以工作。如何从其他js函数正确访问我的tabview?

EN

回答 1

Stack Overflow用户

发布于 2013-07-24 19:35:28

好吧,问题是init()函数是body的onload函数,它在我的tabview创建之前已经被调用过了。将init()函数移到我的tabview代码块中解决了这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17830507

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档