我正在使用slideToggle并想知道如何将变量传递给回调函数。它追溯未定义。有任何想法吗?干杯!
$('.drop-box .button').click(function(){
var target = $(this).parent();
var myVar = $(this);
target.slideToggle(300, function(myVar){
alert(myVar); // undefined
});
return false;
});
答案 0 :(得分:2)
从回调函数的参数中删除myVar
。您不需要传入变量,因为它已经在范围内。
target.slideToggle(300, function() {
alert(myVar);
});
答案 1 :(得分:0)
由于.slideToggle()
未将任何参数传递给回调,因此您必须从回调的定义中删除参数myVar
。由于回调参数隐藏了您的变量,原始变量将返回到范围。
$('.drop-box .button').click(function(){
var target = $(this).parent();
var myVar = "hello";
target.slideToggle(300, function(){
alert(myVar); // hello
});
return false;
});