Javascript 为什么';这不适用于jQuery动画功能吗?

Javascript 为什么';这不适用于jQuery动画功能吗?,javascript,jquery,jquery-animate,slice,parseint,Javascript,Jquery,Jquery Animate,Slice,Parseint,这不起作用: var pieceSize = new Array(); pieceSize[0] = 200; pieceSize[1] = 400; pieceSize[2] = 300; $("#visual").animate({ height: pieceSize[this.id.slice(5, 6)] }, 250, function() { }); 但这是: var pieceSize = new Array(); pieceSize[0] =

这不起作用:

var pieceSize = new Array();
pieceSize[0] = 200;
pieceSize[1] = 400;
pieceSize[2] = 300;
$("#visual").animate({
        height: pieceSize[this.id.slice(5, 6)]
    }, 250, function() {
    });
但这是:

var pieceSize = new Array();
pieceSize[0] = 200;
pieceSize[1] = 400;
pieceSize[2] = 300;
$("#visual").animate({
        height: pieceSize[this.id.slice(5, 6)]
    }, 250, function() {
    });
日志: this.id.slice(5,6)==0或1或2(我正在对正在单击的按钮的id进行切片)

我尝试过添加parseInt的不同组合,但都不起作用:

高度:
pieceSize[parseInt(this.id.slice(5,6)))

高度:
parseInt(片段大小[this.id.slice(5,6)])

高度:
parseInt(parseInt(pieceSize[this.id.slice(5,6)])
这只是工作:


如果您回送
片段大小[this.id.slice(5,6)]
,日志中有什么内容?

在您的案例中,这将获取id“visual”。按钮的id是否也“可见”?

啊,我明白了。。。不,我的按钮有一个不同的id(button0,button1,等等)在函数外记录为300,但在函数内未定义。。。没有意识到“this”指的是#visualYes,因为您在动画功能范围内