有人建议我从jQuery插件中公开属性是首选/标准的结构。
(function($) {
$.myPlugin = {
data: {}
};
$.fn.myPlugin = function() {
return this;
};
})(jQuery);
以上示例通过语法$.myPlugin.data.
如果插件附加到页面上的多个HTML元素,那么我认为$ .myPlugin.data变得无效,因为它等同于静态变量。
答案 0 :(得分:1)
这会将数据附加到插件操作的每个元素上。
(function($) {
$.fn.extend({
myPlugin: function (options) {
var defaultConfig = {data: {}};
return this.each(function () {
$(this).data(
"myPlugin", $.extend(defaultConfig, options)
);
});
}
});
})(jQuery);
例如,当这样调用时:
$("div.foo").myPlugin({option: "value"});
每个<div class="foo">
都有自己的
{
data: {},
option: "value"
}
位于$(this).data("myPlugin")
。
答案 1 :(得分:0)
使用回调函数怎么样?
// external code
$('.something').myPlugin({
onLoad : function(object, data) {
// use data here
}
});