Jquery animate动画效果 使用变量替换key的方法

比如:
deraction = "left";
$("ul").animate({deraction : 200},400)
然后我想通过js把deraction在不同的情况下变换成 left或者top来实现ul是向左移动还是向上移动,但这种方法总是不成功,还会报js的语法错误。
所以可以将animate方法替换成成对象
例如:
function animateObj(f){
    var data={};
    if(f==="left"){data.left="100px";}
    if(f==="top"){data.top="100px";}
    $("ul").animate(data,400);
    }