我正在开发一个 JQuery 插件,它将私有数据存储在对象的数据字段中(正如我发现的一篇文章中所推荐的那样):
$.fn.awesomify = function (schema, data) {
$(this).data('schema', schema);
}
然后我可以在私有方法中检索这个值:
function rebuild() {
var schema = $(this).data('schema');
}
现在我遇到的问题是,当从不同的对象调用该方法时,$(this) 的值是不同的。例如 href 的 onclick 事件:
var a = ...;
a.click(function () {
rebuild(); // Now $(this) is the a-object
});
我应该如何解决这个问题?
谢谢!