0

所以我有一个想要修改的元素(使用 Fx.Tween,但我想这并不重要)。但是,元素 id 是动态生成的,这意味着我必须将它从一些变量中拼凑起来。

所以让我们说......(在js中)

name = 'foo';
id = '42';

我想访问元素$('foo_42')......我将如何输入它?

$(name+'_'+id) 似乎不起作用,除非我做错了......?

我的代码中的实际示例:

var highlight = new Fx.Tween($(accountID+'_'+type+'_'+permission), {
    background-color: #f00;
});

更新:看起来这个问题没有答案 - 我在代码示例中的 JS 是错误的......由于 Fx.Tween 函数的使用不正确。谢谢大家。

4

2 回答 2

1

不,差不多就是这样。Mootools 不会知道您是否这样做$('foo_42')$('foo' + '_' + '42')它只会看到foo_42. 只需确保该 ID 确实存在即可。如果没有,那么$()将返回null

于 2010-08-12T20:32:21.317 回答
0

你有没有尝试过

var highlight = new Fx.Tween($(accountID+'_'+type+'_'+permission), {
    background-color: '#f00'
    //                ^^^^^^
});

? 您发布的原始代码不是有效的 Javascript。请注意,JS 对象语法不是 CSS。

语法$(name+'_'+id)必须在该范围内定义name并一直有效。id

于 2010-08-12T20:30:42.897 回答