Проблема
Я работаю над плагином jQuery.При вызове с $.fn.bar()
alert () внутри foo () не выводит ожидаемый результат.Где я допустил ошибку?
(function($){
var input;
var foo = function(){
alert(this.input); //<-- Not getting the desire input value
}
$.fn.bar = function(){
this.input = "Test";
alert(this.input); //<-- Output "Test" as expected
foo(); //<-- Call foo(), expect to alert "Test" as well, but not
};
}(jQuery));
Решение
Вам необходимо передать контекст this
в bar()
в foo()
с foo.call(this)
.
https://jsfiddle.net/clintonlam/de1vz59w/8/