无法在Dojox中关闭并重新打开浮动面板

时间:2012-09-22 23:24:06

标签: dojo floating

我正在尝试打开浮动面板,使用onClick事件,它打开正常但在控制台中显示此错误this.onClick is not a function

如果我关闭浮动面板然后尝试重新打开,它将无法再次打开,并且我在控制台中一直收到相同的错误。

这是我的application。单击工具栏中的Layers按钮,可以看到浮动面板出现。

这是打开FLoating Panel的主要功能,

function addFloatingPanel() {
    var fp = new dojox.layout.FloatingPane({
        title: "Layers",
        resizeable: true,
        dockable: false,
        closable: true,
        style: "position:absolute; top:0; left:50px; width:245px; height: 175px; z-index: 100; visibility: hidden;",
        id: 'floater'
    }, dojo.byId('floater'));
    fp.startup();
    if (dojo.byId('floater').style.visibility === 'hidden') {
        dijit.byId('floater').show();
    } else {
        dojo.byId('floater').style.visibility = 'hidden'
        dijit.byId('floater').show();
    }
}

我哪里错了?此外,浮动面板在firefox中可见,但在chrome中不可见!!

1 个答案:

答案 0 :(得分:0)

需要创建dojo.connect功能

<div data-dojo-type="dijit.form.Button" id="searchTool" >Search</div>

for onclick event,

searchTl = dojo.byId('searchTool');
dojo.connect(searchTl, "onclick", openSrFp);

并添加此功能,

var fp = dojo.byId('floater');
            if (fp.style.visibility=="hidden") {
                fp.style.visibility="";
            } else {
                fp.style.visibility="hidden";
            }