我使用下面的代码,本质上它需要一个元素作为输入(即):
$(#someDiv).Calculator();
但问题是我想在其自身内部调用该插件的函数,但我不知道如何获取自身的对象/句柄来调用该函数。缓存“this”没有正确的引用。
(function ($) {
jQuery.fn.Calculator = function () {
var selectedObjects = this;
var control = $(selectedObjects[0])[0];
$("#btnCalculate").click(function(){
// this is where calculate needs to be called
someObject.calculate(...);
});
return {
calculate: function (value) {
// do some code
return selectedObjects;
}
};
}
})(jQuery);
任何想法/方向都会有很大帮助!谢谢大家!
最佳答案
尝试
(function ($) {
jQuery.fn.Calculator = function () {
var selectedObjects = this;
var control = $(selectedObjects[0])[0];
$("#btnCalculate").click(function(){
// this is where calculate needs to be called
calculator.calculate(...);
});
var calculator = {
calculate: function (value) {
// do some code
return selectedObjects;
}
};
return calculator;
}
})(jQuery);
关于javascript - jQuery插件函数调用它自己的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16705123/