首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >直到调用.hide()时才显示dojox.Standby

直到调用.hide()时才显示dojox.Standby
EN

Stack Overflow用户
提问于 2012-04-25 21:55:12
回答 4查看 1.5K关注 0票数 0

我在试着用dojox.widget.Standby。我希望待机代码在其他代码执行时显示,然后在代码执行完成后隐藏。但是,我的待机状态似乎只在我调用standby.hide()时显示。代码如下:

代码语言:javascript
复制
    standby = new dojox.widget.Standby({
    target : "map-id"
});

        <div id="map-id" class="centerPanel"
        data-dojo-type="dijit.layout.ContentPane"
        data-dojo-props="region: 'center', style: 'width: 1300px;'">
        <span id="toolbar"></span>
        <div id="co-ords" style="position:absolute; bottom:0px; z-index:1000; font-size:8; font-weight:bold; background-color: #FFFFFF"></div>
    </div>

有人知道是怎么回事吗?我也在努力使用dojo.connect来捕获onShow事件...

代码语言:javascript
复制
    dojo.connect(standby, "onShow", function(){
    console.log("standby onShow");
})

谢谢!

更新-调用standby.hide()在FireFox中显示我的小部件,但不显示Chrome

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-05-22 20:49:03

显示和隐藏调用之间的代码是否恰好是同步的xhrget/xhrpost ajax调用?当ajax调用完成后,所有浏览器操作完全停止,因此待机动画只会在sync=true调用完成后快速显示和隐藏,同时调用.hide()。如果是这样,并且您有多个调用需要同步操作,那么您可以将它们设置为异步,并在其响应函数中将它们链接在一起。

票数 2
EN

Stack Overflow用户

发布于 2012-04-25 22:02:14

我发现,在创建备用小部件时,我总是需要添加以下行:

代码语言:javascript
复制
dojo.body().appendChild(standby.domNode);
票数 0
EN

Stack Overflow用户

发布于 2013-09-27 09:18:37

如果你真的需要同步呼叫,而不是使用待机,你可以尝试这样做...

代码语言:javascript
复制
dojo.byId('loading_status').innerHTML='Loading 0%...';
sync_ajax_call_1();
dojo.byId('loading_status').innerHTML='Loading 25%...';
sync_ajax_call_2();
dojo.byId('loading_status').innerHTML='Loading 50%...';
sync_ajax_call_3();
dojo.byId('loading_status').innerHTML='Loading 75%...';
sync_ajax_call_4();
dojo.byId('loading_status').innerHTML='Loading 100%...';

dojo.byId还可以替换为dom.byId或$(在jquery中)或getElementById

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

https://stackoverflow.com/questions/10317209

复制
相关文章

相似问题

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