我試圖創建一個jQuery插件,以下一些官方jQuery的 - 插件方法調用
(function($){
var methods = {
init : function(options) {
this.options = options;
}
, add_that: function (elem) {
this.append(elem);
return (this);
}
, add_this: function (elem) {
return (methods.add_that(elem));
}
};
$.fn.test = function (method) {
if (methods[method]) {
return methods[ method ].apply(this, Array.prototype.slice.call(arguments, 1));
} else if (typeof method === 'object' || ! method) {
return methods.init.apply(this, arguments);
} else {
$.error('Method ' + method + ' does not exist on jQuery.test');
}
};
})(jQuery);
我想的方法add_that
能夠附加的東西匹配的元素(一個或多個)。
現在這種方法從add_this
調用。
$('#test').test('add_this', $('<div />'));
TypeError: this.append is not a function
爲什麼我不能訪問從add_that
插件(this
)?
謝謝你,幫我做我的[首頁]( https://github.com/Glideh/jquery.particles.burst)githubbed jquery插件:) – 2012-04-04 08:41:00