无法在Dojox关闭并重新打开浮动面板 [英] Unable to close and reopen Floating Panel in Dojox

查看:190
本文介绍了无法在Dojox关闭并重新打开浮动面板的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图打开一个浮动面板,使用onClick事件,它打开正常,但在控制台中显示此错误, this.onClick不是一个函数。 p>

如果我关闭浮动面板,然后尝试重新打开,它将不会再打开,我仍然在控制台中收到相同的错误。



这是我的应用程序。当您点击工具栏中的 Layers 按钮时,您可以看到浮动面板。



这是主要的功能是打开FLoating面板,

  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')。
}
}

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

解决方案

需要创建 dojo.connect 函数

 < div data-dojo-type =dijit.form.Button id =searchTool>搜索< / 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;
}


I am trying to open a floating panel, using onClick event, it opens fine but shows this error in the console, this.onClick is not a function.

If I close the floating panel and then try to a reopen, it won't open again and I keep receiving the same error in the console.

This is my application. You can see a floating panel emerge when you click on the Layers button in the toolbar.

This is the main function that is opening the 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();
    }
}

Where am I going wrong? Also, the floating panel is visible in firefox but not in chrome!!

解决方案

Needed to create the dojo.connect function

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

for onclick event,

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

and add this function,

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

这篇关于无法在Dojox关闭并重新打开浮动面板的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆