jQuery插件,摇......

时间:2011-12-25 16:56:13

标签: javascript jquery css callback position

我有这样的代码:http://jsfiddle.net/Ym4NP/2/为什么“内容”div不会向上移动,只能向下移动?以及我如何将$this(选择器)发送给回调函数?

1 个答案:

答案 0 :(得分:1)

我只是使用jQuery UI来实现这个效果。

看到这个小提琴:

http://jsfiddle.net/kEKtw/2/

使用此代码

$(document).ready(function() {
    $('#main').effect("shake", {direction:'up', times:10}, 0);
});

注意:

  • 我更改了css以使数字加起来或者UI代码会出现问题。
  • 如果你看一下jQUI如何实现震动,你会看到“效果”堆栈是按照我的建议实现的。

位置应该是一个数组:

你真正想做的是建立一个这样的序列:

  • 提高随机金额
  • 等待设定时间
  • 回到中心
  • 等待设定时间
  • 向下移动

然而,使用位置作为对象不会给出排序,也不允许您重复命令(因为命令是对象属性名称,它必须是唯一的。)

如果它是一个数组,你可以设置这样的东西进入插件:

 positions: [
        'U': -300,
        'W' : 1000,
        'C' : 0,
        'W' : 1000,
        'D': 300
    ],

旧答案

代码很复杂,但问题很简单。

在摇动中的每次“移动”中,您将顶部或底部的相对位置更改为1到300之间的新数字。这意味着项目将在1到300 +对象大小之间移动。我相信你想要做的是在-300到+300之间移动它。为此,您需要更改U命令以将值设置为-300到0而不是0到300

逻辑中还有另一个错误 - 它不会将框重置为中心。