jquery如何知道它到底是什么?
$('#myDiv').animate({ textIndent: 0 }, {
step: function(go) {
$(this).css('-moz-transform','rotateY('+go+'deg)');
$(this).css('-webkit-transform','rotateY('+go+'deg)');
$(this).css('-o-transform','rotateY('+go+'deg)');
$(this).css('transform','rotateY('+go+'deg)');
},
duration: 1000,
complete: function(){ alert('done') }
});
答案 0 :(得分:0)
go
只是函数参数的名称。根据{{3}}
步骤功能
.animate()
的第二个版本提供step
选项 - 回调 在动画的每一步触发的函数。这个功能是 用于启用自定义动画类型或更改动画 因为它正在发生。它接受两个参数(now
和fx
),这是 设置为动画的DOM元素。
now
:每个步骤动画的属性的数值- FX: 对
jQuery.fx
原型对象的引用,其中包含一个数字 对于动画元素,elem
和start
等属性,例如end
动画属性的第一个和最后一个值,分别和prop
用于动画的属性。
因此go
只是now
参数的此函数名称。
答案 1 :(得分:0)
http://api.jquery.com/animate/
“Step”是一个特定的动画选项。 “step”的一个参数是元素当前在其动画中的值。
当你在jQuery中制作动画时,它会在起点和终点之间切换。中间的位由jQuery计算并传递。
因此它知道“go”是什么,因为它只是一个由动画函数创建的数字。
答案 2 :(得分:0)
此动画使用正方形上的textIndent
属性围绕y轴旋转方形。
textIndent
属性在CSS中定义为从180px
开始,动画设置会将textIndent
值减少为0
。在从180减少到0的每个步骤中,该值将作为go
参数的参数传递到 step
函数中。然后使用此值来使用CSS变换围绕y轴旋转方形。
答案 3 :(得分:0)
jQuery step
选项允许您定义一个回调函数,该函数接受两个参数并在动画的每个“步骤”上调用。您已将回调函数定义为仅采用一个参数(您将其命名为go
),并忽略了第二个参数。您创建的回调函数称为anonymous function
,您可以将参数命名为任何您想要的参数。
您可以在此处详细了解:.animate()