2010-08-12 48 views
0

所以我有一個我想修改的元素(用Fx.Tween,但我想它並不重要)。但是,元素ID是動態生成的,這意味着我必須將它從一些變量拼湊在一起。mootools中的變量美元符號元素調用

所以我們說...(在JS)

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

,我想訪問元素$('foo_42') ...我將如何鍵入它呢?

$(name +'_'+ id)似乎不起作用,除非我做錯了......?從我的代碼

實際的例子:

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

更新:看起來這個問題沒有答案 - 我的代碼示例中JS是錯誤的...由於Fx.Tween的不正確使用功能。謝謝大家。

回答

1

不,這幾乎就是它。 Mootools不會知道你是否做$('foo_42')$('foo' + '_' + '42'),它會看到的全部是foo_42。只要確保ID實際存在。如果沒有,則$()將返回null

0

你試過

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

?您發佈的原始代碼是無效的Javascript。請注意,JS對象語法不是CSS。

語法$(name+'_'+id)必須工作,只要nameid在該範圍內定義。