我有函数foo以jquery包装节点为参数。有没有更优雅的方式来运行节点集上的这个功能?设置初始化函数的优雅方式
的方式我做到这一点:
$('.for-foo').each(function() {
foo($(this));
});
我有函数foo以jquery包装节点为参数。有没有更优雅的方式来运行节点集上的这个功能?设置初始化函数的优雅方式
的方式我做到这一点:
$('.for-foo').each(function() {
foo($(this));
});
你可以把它一个插件:
$.fn.foo = function(){
return this.each(function(){
// do something to each element "this"
});
};
用法:
$('.for-foo').foo();
这也将使其与可链接其他jQuery函数。
你可以在选择传递给函数,就像这样:
foo($(".for-foo"));
然后你foo
功能应该是这样的:
function foo(selection) {
selection.each(function() {
// do stuff with each current node
});
}
foo
更加混乱,但至少要打电话要干净得多。
您的用途foo()
不清楚,答案可能会有所不同。一个典型的例子可以是:
function foo($el) {
$el.css('color', function(i) {
return ['black', 'green', 'yellow', 'blue', 'red'][i];
});
}
foo($('.for-foo'));
函数foo()'的目的是什么? bcoz,答案取决于它,我想 – thecodeparadox 2012-07-14 17:03:12