【发布时间】:2012-05-15 12:21:36
【问题描述】:
解决了,Yohoo
我有一个对话框插件,像这样
$("#dialog").dialog({
click:function(){
alert(1);
},
'class':"dialog"
});
下面的代码是一段主代码,它循环选项并检查 key 是否是一个 jQuery 函数,然后调用它,否则将其设置为属性
$.each(options,function(key,val){
if(key in $.attrFn){
$('#div')[key](val); // I want pass arguments to this function
// equal $('#div').click(function(args){
// alert(1);
// });
// this is like jQuery ui dialog buttons options
} else {
$('#div').attr(key,val);
}
});
我想向函数传递一些参数,但我不知道怎么做??
例子:
$("#dialog").dialog({
click:function(dialog){
dialog.disAppear();
},
'class':"dialog"
});
已解决:
$.each(v,function(q,w){
if(q in $.attrFn){
//console.log(dialog);
b[q](function(){
w(dialog);
});
} else {
b.attr(q,w);
}
});
【问题讨论】:
-
您想将参数传递给什么函数?请编辑您的问题并澄清。
-
@jmort253 到 $('#div')[q](val);它等于 ( $('#div').click(function(pass here){}); )
-
在问题下方,单击编辑,然后将其放入您的问题中。不要强迫试图帮助您阅读 cmets 代码的人。这表明对帮助您的社区缺乏尊重。谢谢! :)
-
感谢您这样做:)
-
MR OK - 恭喜您找到解决方案。但是,答案不应该出现在问题的主体中。接下来,您应该在下面标记一个已接受的答案,或者如果以下任何一个都不能解决问题,您应该将您的解决方案作为问题的答案发布,并将其标记为实际的、已接受的答案。回答您自己的问题是完全可以接受的,只要它作为实际答案发布即可。祝你好运,感谢您回来跟进解决方案。您已确保其他人也能从中受益!
标签: javascript jquery jquery-ui