jquery规模效应很慢?

时间:2011-06-21 07:24:28

标签: jquery scale

我有以下jquery代码:

$(document).ready(function () {


     $('.box').click(function (){

         var selectedBox = $(this),
             selectedBoxLocationX = selectedBox.offset().left,
             selectedBoxLocationY = selectedBox.offset().top;

        selectedBox.animate({left:-selectedBoxLocationX, top:-selectedBoxLocationY},600).addClass('current');


        otherBoxes = $('.box:not(.current)');

        otherBoxes.animate({left:2000},600);
        selectedBox.effect('scale', {percent:500, direction: 'vertical'}, 1000);


        selectedBox.click(function(){
            selectedBox.effect('scale', {percent:20, direction: 'vertical'},200);
            otherBoxes.animate({left:0},600);
            selectedBox.animate({top: 0, left: 0},700).removeClass('current');

        });

    });

});

我发现selectedBox缩放到20%的速度非常慢。它实际上在 selectedBox动画之后缩放

有谁能告诉我为什么会这样?

MTIA!

1 个答案:

答案 0 :(得分:1)

我用一个(希望)工作的例子来更新你的小提琴:

http://jsfiddle.net/sk62Y/4/

你的问题是,一旦你选择了Box.click处理程序,你就有了2个点击事件。不知怎的,这完全混淆了动画。

我现在只需单击selectedBox元素上的原始点击处理程序,然后在第二次单击时重新附加它。