使用变量+字符串获取一个变量的值来调用它

时间:2012-11-21 07:23:36

标签: javascript

我有一个重置游戏片段的脚本,但是我无法让变量调用另一个变量来获得最终值。

以下是包含原始位置的变量,我需要在我的函数中使用这些值:

red_1_x = $('#red_1').css('left');
red_1_y = $('#red_1').css('top');

这是我调用动画函数的函数:

$('.piece').mouseover(function(e) {
    var id = $(this).attr('id');
    resetGroundShoe(id);
});

$(this).attr('id')例如: red_1

这是动画功能:

function resetPiece(id){
    if(!id){
        alert('no id');
    }
    else{
        x = id+'_x';
        y = id+'_y';
        gotoX = x;
        gotoY = y;
        $('#'+id).animate({left: x}, 250, function(){
            $('#'+id).animate({left: y}, 250);
        });
    }
}

出于某种原因, gotoX gotoY 不是 red_1_x red_1_y

的数值

1 个答案:

答案 0 :(得分:1)

假设这些是全局变量,您可以使用window[x]window[y]来访问名称存储在x / y中的全局变量。

然而,使用全局变量是非常糟糕的风格,听起来你应该将这些值作为参数传递!