在函数里,我有:调用函数定义一个变量
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。如果我在setMyType()中警告(myType),则警报包含正确的值。但主要功能无法看到这个价值。
这是一个范围问题,但我不知道如何解决它。我尝试在main函数中定义myType并将其传递给setMyType()。虽然setMyType()从主函数中获取myType的值很好,但它仍然不会将更改后的值返回给主函数。
通过您的函数setMyType()无法解析$(this)的方式,您需要用其他jquery选择器替换它。 – 2010-08-30 07:25:33