1

我正在开发一个包含大量 JavaScript 和 jQuery 代码库的网站,并且我正在尝试给它一个更有条理的类似插件的结构。我阅读了一篇文章,展示了如何使用自执行匿名函数来帮助处理范围,它还允许您的库使用“window.namespace = window.namespace || {}”技术跨文件增长。

例如:

//Self-Executing Anonymous Function:
(function( skillet, $, undefined ) {

    //Private Property
    var isHot = true;

    //Public Property
    skillet.ingredient = "eggs";

    //Public Method
    skillet.fry = function() {
        // do stuff...
    };

    //Private Method
    function addItem( item ) {
        // do stuff...
    }    
}( window.skillet = window.skillet || {}, jQuery ));

演示:jsFiddle

我的问题是,我将如何在skillet.fry() 下添加一个公共方法。所以我可以打电话给类似 Skillet.fry.cancel();

或者,如果有更好的方法可以做到这一点,我愿意接受建议。

4

1 回答 1

1

你可以试试这样的。它将允许您声明that可在cancel().

skillet.fry = (function() {
    var that = {};

    that.cancel = function() {
        //...
    }

    return that;
})();
于 2013-03-13T00:07:00.637 回答