-1

在 www 上找到的 jsfiddle 示例

jquery 怎么知道 go 是什么?

$('#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') }
});
4

4 回答 4

0

go只是函数参数的名称。根据jQuery 文档

阶跃函数

第二个版本.animate()提供了一个step选项——在动画的每一步触发的回调函数。此函数对于启用自定义动画类型或更改正在发生的动画很有用。它接受两个参数(nowfx),并将其设置为动画的 DOM 元素。

  • now: 每一步动画属性的数值
  • fx:对jQuery.fx原型对象的引用,其中包含许多属性,例如elem动画元素,start动画end属性的第一个和最后一个值,以及 prop被动画的属性。

go参数名称也是如此now

于 2013-04-02T20:19:44.460 回答
0

http://api.jquery.com/animate/

“步骤”是一个特定的动画选项。“step”的参数之一是元素当前在其动画中的值。

当您在 jQuery 中制作动画时,它会在起点和终点之间移动。中间的位由 jQuery 计算并传递。

因此它知道“go”是什么,因为它只是一个由动画函数创建的数字。

于 2013-04-02T20:25:44.527 回答
0

此动画使用textIndent正方形上的属性来围绕 y 轴旋转正方形。

textIndent属性在 CSS 中定义为开始,180px动画设置会将textIndent值减小到0。在从 180 减少到 0 的每一步中,该值step作为参数的go参数传递给函数。然后,该值用于使用 CSS 变换围绕 y 轴旋转正方形。

于 2013-04-02T20:25:58.237 回答
0

jQuerystep选项允许您定义一个回调函数,该函数接受两个参数并在动画的每个“步骤”上调用。您已将回调函数定义为仅采用一个参数(您已将其命名为go),而您忽略了第二个参数。您创建的回调函数称为 ananonymous function并且您可以将参数命名为您喜欢的任何名称。

你可以在这里阅读更多关于它的信息:.animate()

于 2013-04-02T20:26:14.443 回答