调整大小结束时的dijit/layout/ContentPane?

Ste*_*Lam 5 dojo dijit.layout

我现在正在使用dojo 1.8.3,现在我的页面上有一个带有2个ContentPane的BorderContainer.我想听resize事件,像这样的代码

dojo.ready(function(){
    dojo.connect(dijit.byId("Container"), "resize", function(changeSize, resultSize){
        // do my stuff here...
    });
});
Run Code Online (Sandbox Code Playgroud)

但是,如果调整大小(分裂)结束,有没有让我知道?请指教,谢谢!

Jam*_*mes 6

首先,我建议使用"现代道场",因为你无论如何都在使用道场1.8.不推荐使用dojo/connect,现在可以使用dojo/aspect来"监视"函数调用.

所以你最终得到的结果如下:

require(["dojo/ready", "dojo/aspect", "dijit/registry"], function(ready, aspect, registry) {
    ready(function() {
        aspect.after(registry.byId("Container"), "resize", function() {
            // do something after resize has been called...
        });
    });
});
Run Code Online (Sandbox Code Playgroud)

如果要访问已传递给resize函数的参数,请调用aspect.after,将true作为最后一个参数,如:

aspect.after(registry.byId("Container"), "resize", function(changeSize, resultSize) {
    // do something with changeSize and resultSize after resize has been called...
}, true);
Run Code Online (Sandbox Code Playgroud)