0
我需要在我的网站上完成相当复杂的动画,元素上下滑动,CSS属性被操纵等等。我想知道如何以优雅的方式做到这一点。使用jQuery管理复杂的动画
动作触发onclick,另一次点击应该恢复一切,直到网站再次处于其原始状态。
我不想做的就是写这样
功能$(somebutton).onclick(function() {
if($(this).hasClass("clicked") {
$(this).slideDown();
$('#that').show();
$('#button').css("position","absolute");
// more things going on
} else {
// revert all things gone on
$(this).slideUp();
$('#that').hide();
$('#button').css("position","static");
}
});
这意味着我不想将所有这些语句写出两次,甚至更糟糕的是,大多数动画在70%中都是相同的。我不想一遍又一遍地写这些。
我想到的就像是一个动画队列,我可以操纵,弹出和移动,最重要的还原。我发现jQuery的队列() - 功能,但有一点我卡住:
一旦定制队列离队它不存在任何更多,这意味着我可以一次动画的元素,但我可以例如,说:
myQueue.queue('animate')。reverse();
myQueue被触发后,因为此时它是空的。
这个冗长的解释不仅仅是针对这个简单的队列问题。这也是一个邀请建议更好的方法来实现这一点。
我会去面向对象的方法。看看这篇博文:http://ryanflorence.com/authoring-jquery-plugins-with-object-oriented-javascript/ –