我现在正在使用dojo 1.8.3,现在我的页面上有一个带有2个ContentPane的BorderContainer.我想听resize事件,像这样的代码 dojo.ready(function(){ dojo.connect(dijit.byId("Container"), "resize", function(changeSize, resul
dojo.ready(function(){ dojo.connect(dijit.byId("Container"), "resize", function(changeSize, resultSize){ // do my stuff here... }); });
但是,如果调整大小(分裂)结束,有没有让我知道?请指教,谢谢!
首先,我建议使用 “modern dojo”,因为你无论如何都在使用dojo 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... }); }); });
如果要访问已传递给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);