0

我想同时为 thediv#w_xxx和 the设置动画div#w_xxx img

它们应该变大,之后它们应该达到原来的宽度和高度。

问题是,mootools 同时播放所有动画,所以我看不到动画,我尝试了.chainmootools 的一些功能,但我没有让它工作。

我的代码如下所示:

$("w_"+current_item+"").set('morph', {
            duration: 1000,
            transition: Fx.Transitions.Bounce.easeOut
        });
        $("w_"+current_item+"").morph({
                    'opacity': '1',
                    'width': 366,
                    'height': 240,
                    'z-index': '100'
        });

        $$("div#w_"+current_item+" img").set('morph', {
            duration: 1000,
            transition: Fx.Transitions.Bounce.easeOut
        });
        $$("div#w_"+current_item+" img").morph({
                    'opacity': '1',
                    'width': 366,
                    'height': 240,
                    'z-index': '100'
        });

        $("w_"+current_item+"").set('morph', {
            duration: 1000,
            transition: Fx.Transitions.Bounce.easeOut
        });
        $("w_"+current_item+"").morph({
                    'opacity': '1',
                    'width': 183,
                    'height': 120,
                    'z-index': '100'
        });

        $$("div#w_"+current_item+" img").set('morph', {
            duration: 1000,
            transition: Fx.Transitions.Bounce.easeOut
        });
        $$("div#w_"+current_item+" img").morph({
                    'opacity': '1',
                    'width': 183,
                    'height': 120,
                    'z-index': '100'
        });
4

1 回答 1

1

您应该Fx.Elements从 MooTools-more 中查看:http: //mootools.net/docs/more/Fx/Fx.Elements,它被设计为在一个统一的计时器上运行多个动画。

http://jsfiddle.net/dimitar/tC4V4/

// mock your current_item... 
var current_item = 1;

var w = document.id("w_" + current_item);
new Fx.Elements($$(w, w.getElement("img")), {
    onComplete: function() {
        console.log("done");
    },
    duration: 4000,
    transition: Fx.Transitions.Bounce.easeOut,
    link: "chain"
}).start({
    0: {
        'opacity': '1',
        'width': 366,
        'height': 240,
        'z-index': '100'
    },
    1: {
        'opacity': '1',
        'width': 183,
        'height': 120,
        'z-index': '100'

    }   
}).start({
    0: {
        opacity: 0
    }  

});

同样的道理,它支持 link:chain ,所以你可以链接东西或等待等。

于 2011-11-22T15:49:43.670 回答