首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何覆盖dojo的domReady

如何覆盖dojo的domReady
EN

Stack Overflow用户
提问于 2015-01-14 14:59:16
回答 1查看 157关注 0票数 0

我想重写dijit.CssStateMixin的domReady()方法。是否有任何方法可以替代Dojo中的侦听器机制来覆盖它。

我尝试用简单的javascript重写_cssMouseEvent()方法,但它仍然从domReady()调用dijit的_cssMouseEvent()。

我尝试了以下方法:

代码语言:javascript
运行
复制
 dojoConfig = {
        map: {
            'dijit/_CssStateMixin': {
                    'dojo/domReady': 'app/noop'
            }
    }
}; 

我添加了'app‘文件夹,然后'noop.js’在里面。noop.js中没有任何内容:

代码语言:javascript
运行
复制
    define([], function () {
    return function () {};
});

即使在这之后,我也可以看到dijit.js的_CssStateMaxin domReady()正在从listener.apply (下面粘贴的代码片段)中被调用。

代码语言:javascript
运行
复制
var addStopImmediate = function(listener){
        return function(event){
            if(!event.immediatelyStopped){// check to make sure it hasn't been stopped immediately
                event.stopImmediatePropagation = stopImmediatePropagation;
                return listener.apply(this, arguments);
            }
        };
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-15 03:42:29

如果您的最终目标是阻止domReady回调在dijit/_CssStateMixin中运行,那么您最简单的赌注可能是在通过dijit/_CssStateMixin加载时,将dojo/domReady重新映射到一个根本不调用回调的不同模块。

注意:去掉这些处理程序的可能会对继承_CssStateMixin的Dijit小部件产生不良的视觉效果,因为它可能会阻碍与悬停和焦点相关的Dijit类的应用。但是,如果你担心_CssStateMixin妨碍了你的表现,那么至少值得一试来确认或否认你的怀疑。

首先,我们必须创建一个简单的模块,它返回一个什么都不做的函数,稍后我们将在dojo/domReadydijit/_CssStateMixin加载时替代它,这样它仍然可以调用domReady,但是它不会执行它传递的回调。

为了简单起见,我假设您已经有了一个定制包,您可以轻松地向其中添加一个模块;在本例中,我假设它名为app。让我们创建app/noop

代码语言:javascript
运行
复制
define([], function () {
    return function () {};
});

现在,让我们将加载程序配置为映射app/noop,而不是dojo/domReady,特别是在dijit/_CssStateMixin加载时

代码语言:javascript
运行
复制
var dojoConfig = {
    ...,
    map: {
            'dijit/_CssStateMixin': {
                    'dojo/domReady': 'app/noop'
            }
    },
    ...
};

现在,不应该再运行违规的domReady回调了。

如果您对map感兴趣,可以在这个SitePen常见问题中阅读更多有关它的信息。

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

https://stackoverflow.com/questions/27945875

复制
相关文章

相似问题

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