Внутри функции, у меня есть:Вызов функции для определения переменной
var myType;
if ($(this).is(".whatever")){
myType = typeOne;
} else if ($(this).is(".something")){
myType = typeTwo;
}
Это прекрасно работает. Однако я хочу превратить это в отдельную функцию, которую я могу назвать, поскольку я использую ее в нескольких разных местах. Функция я пишу:
function setMyType(){
var myType;
if ($(this).is(".whatever")){
myType = typeOne;
} else if ($(this).is(".something")){
myType = typeTwo;
}
}
Когда я называю setMyType() в моей основной функции, основная функция не может получить доступ к MyType. Если я предупреждаю (myType) внутри setMyType(), предупреждение содержит правильное значение. Но основная функция не может видеть эту ценность.
Это проблема с областью действия, но я не уверен, как ее решить. Я попытался определить myType внутри основной функции и передать ее в setMyType(). В то время как setMyType() получает значение myType от основной функции просто отлично, он все равно не возвращает измененное значение в основную функцию.
, кстати, ваша функция setMyType() не может разрешить $ (это), вам нужно заменить его другим селектором jquery. –