У меня есть функция анимации, которая в зависимости от переданных значений в аргументы может творить с блоком что угодно (читай разные вещи). Она похожа на jQuery .animate() по исполнению, но не синтаксису. Что я хочу? Для начала обрисую вид (не целиком, а просто логику).
function anim(el, prop, val, speed){
//something
}
document.getElementById("button").onclick = function(){
//block left:200px
anim('block','left','200px',[10,100]);
//block opacity:0
anim('block','opacity','0',"fast");
}
как вы поняли, функция смещает блок влево на 200 пикселей и одновременно пытается "затуманить" блок, чтобы он плавно пропал (да, я знаю про css3, но этот пример чисто для наглядности). Как мне обойти эти очереди чтобы работа был асинхронной? (если бы очереди - их тут вообще нет, выполняется последняя). Как запустить эту функцию для отрисовки разных вещей? Как это сделать красиво? Может можно как-то создать виртуальную копию функции для обхода?
Прошу меня извинить если я что-то оформил неправильно - пишу с телефона. Надеюсь вопрос понятен.
Вот кстати схожий вопрос, но по jQuery и на stackoverflow:
http://stackoverflow.com/questions/1...simultaneously