扩展jQuery原型

3

我有一个方法addObject在jQuery原型上,我是使用jQuery.fn.extend()完成的。

jQuery.fn.extend({
    addObject : function(objectKey){
        this[objectKey] = {};
    }
});

现在我想向其原型添加一个方法addNewObject。我试图模拟下面的情景。
function addObject(){
    ...
}

addObject.prototype.addNewObject = function(){
    ...
}

我的addObject如何使用new关键字访问?

2
我在jQuery原型上使用了jQuery.fn.extend()方法来创建一个名为addObject的函数。现在请向我们展示它,而不是告诉我们。 - T.J. Crowder
2
jQuery.fn.addObject.prototype.addNewObject = function() {... - adeneo
this[objectKey] = {}; 的预期结果是什么? - guest271314
1个回答

2

您可以使用以下代码替代extend:

// insulate plugin in IIFE
(function() {
    // declare function
    function addObject(options) {
        return this.each(function(){});
    }
    // add prototypes
    addObject.prototype.addNewObject = function() {}

    // extend as plugin by passing function reference
    $.fn.addObject = addObject;


})(jQuery);

请查看https://jqueryboilerplate.com/,了解有关开发插件的大量信息、指南、模式等。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接