如何将这个Js函数转换为jQuery中的匿名函数
问题描述:
这个函数在调用时如何将其转换为jquery匿名函数。我尝试过,但它给我的对象预期错误。此外,我已经打电话到下面的 setTab()在20个文件中,所以我不能更改调用的签名,它应该与(setTab(“Test”))相同,但实现需要更改为匿名函数,它接受参数。如何将这个Js函数转换为jQuery中的匿名函数
//*S FUNC()
function setTab(selection) {
$("#"+selection).css('background', '#CC0000');
$("#"+selection).css('color', '#ffffff');
}
// jQuery的Anonynous Func键
var setsTab = (function (selection) {
$("#"+selection).css('background', '#CC0000');
$("#"+selection).css('color', '#ffffff');
})();
答
问题是你已经设置了一个自动执行的匿名函数,这意味着setsTab被设置为函数返回(undefined),因为该函数一旦被调用就会被调用(这就是paren组在声明结束时,调用函数);
什么,我会做的是
var setsTab = function(selection) {
$("#"+selection).css('background', '#CC0000');
$("#"+selection).css('color', '#ffffff');
};
答
我猜你要这样说?
var setsTab = function (selection) {
$("#"+selection).css('background', '#CC0000');
$("#"+selection).css('color', '#ffffff');
}
编辑:但这与jQuery没有任何关系。 (anonymous jquery function
?)
+1
或称为“匿名函数”给出:p与帖子的主要区别在于函数对象不是首先被调用,而是被赋值给变量。 – 2011-09-25 16:42:55
究竟是什么你想在这里做什么?这有点不清楚。你能否指出我们这样做的一个例子? – JaredPar
HTML的其余部分在哪里?你包括jQuery本身?你把你的代码放在jQuery的'document.ready'中吗? – Sparky
@JaredPar:Iam尝试将现有JS函数的定义更改为匿名函数或闭包(它应该接受相同的参数选择)。此外,我应该使用相同的签名调用函数 – Someone