是否有可能通過一個jQuery方法作爲參數成函數,例如:將jquery方法作爲參數傳遞給函數?
function set_action(a,b)
{
$(a).b;
}
$(function(){
$('#div_id1').click(function(){
set_action('#div_id2','hide()');
});
});
?
是否有可能通過一個jQuery方法作爲參數成函數,例如:將jquery方法作爲參數傳遞給函數?
function set_action(a,b)
{
$(a).b;
}
$(function(){
$('#div_id1').click(function(){
set_action('#div_id2','hide()');
});
});
?
可以使用括號標記用字符串訪問對象的任何屬性:
var foo = {
bar: 5
};
console.log(foo['bar']);
所以,你可以這樣做:
function set_action(a,b) {
$(a)[b]();
}
set_action('#div_id2','hide');
注意,如果該對象不,這將拋出一個錯誤擁有該名稱的可調用屬性。
您可以使用'$ .fn.hasOwnProperty(b)'(檢查jQuery對象時,使用'$ .fn')或'typeof $(a)[b] =='來檢查對象是否具有可調用屬性='函數'或b在$(a)中。 – 2011-12-29 19:17:16
function set_action(a,b) {
$(a)[b]();
}
$('#hello').click(function(){
set_action('#bye','hide');
});
的eval代碼,如果你想這樣做的'的eval( 「$( ' 」+ A + B「')。」);' – 2011-12-29 19:08:20
不要使用'的eval( )'!遠離'eval()'。它非常低效! – 2011-12-29 19:10:37