我在jqueryUI中使用回调来确保下一个动画将在上一个动画的末尾开始。我试图理解为什么这两个非常相似的回调会导致不同的结果
以下是两种不同的语法:
//First callback
$(".main-container").switchClass("col", "col-9", addElements());
//Second Callback
$(".main-container").switchClass("col", "col-9", function(){
addElements();
}); 我使用的是引导程序,因此用的是colto-col-9类开关。在第一个回调中,附加到main-container的元素在动画运行时被追加和显示,而在第二个回调中,它们出现在col扩展到col-9之后。
为什么会有区别?
发布于 2017-10-26 17:50:50
你自己解释了区别。第一种方法是在操作完成后定义要调用的函数--也就是说,将col更改为col9。它将在将一个col更改为一个col9并添加一个元素之后调用。
第二个函数是使用匿名函数定义的,因此只有在主容器中的所有单个switchClass被调用之后才会调用它,然后添加元素。
它们看起来可能是一样的--即调用addElements()的回调,但实际上,正如您注意到的那样,它们不是。在第一种情况下,您在每次转换之后调用函数addElements,而在第二种情况下,addElements在回调中被调用,并且只在所有转换发生之后才被调用。
https://stackoverflow.com/questions/46960373
复制相似问题