使用dojo触发窗口调整大小事件

时间:2015-06-22 11:52:15

标签: javascript dojo c3

我想找到一种方法来使用Dojo触发窗口调整大小事件(当您调整浏览器窗口时触发的事件)。它允许我调整C3图表的大小。

我发现模块on允许使用函数emit监听和触发自定义事件,所以这是我尝试过的:

on.emit(win, 'resize', {bubbles: true, cancelable: true});

win是我尝试用作被激活事件源的dojo/_base/window模块。我也试过这个:

on.emit(win.body(), 'resize', {bubbles: true,cancelable: true});

但没有任何效果,我的图表没有收到这个事件。

2 个答案:

答案 0 :(得分:2)

使用普通窗口对象:

on(window, 'resize', function() { console.log('resize!')});
on.emit(window, 'resize', {bubbles: true,cancelable: true})

答案 1 :(得分:1)

define([
    "dojo/_base/declare",
    "dijit/Viewport"
], function(declare, Viewport) {

    return declare("Som", [Viewport], {
        onClick: function(){
            Viewport.emit("resize");
        }
    });

});