如何在单个jQuery对象上执行函数?

时间:2011-07-08 03:20:34

标签: javascript jquery

我经常在jQuery中使用each方法,例如:

 $('#thing img').each(function(){
     //do some stuff
 });

...在jQuery对象中的每个元素上执行函数。 是否有方法/语法对对象中唯一(或第一个匹配的)元素执行操作?

我在想像

 $('#thing img').do(function(){
     //do some stuff
 });

我不需要使用jQuery,但可以,因为有问题的应用程序已经使用它。

5 个答案:

答案 0 :(得分:3)

请不要使问题复杂化:

var thisImg = $('#thing img')[0];
//do some stuff with thisImg

答案 1 :(得分:2)

您可以使用eq选择器。

尝试:

$('#thing img').eq(0).each(function(){
     //do some stuff
 });

$('#thing img:eq(0)').each(function(){
     //do some stuff
 });

或(基于@John的输入)

   $('#thing img').first().each(function(){
         //do some stuff
     });

答案 2 :(得分:2)

只需将选择器限制为第一个元素,如下所示:

$('#thing img:eq(0)').each(function(){
 //do some stuff on the first response only
});

答案 3 :(得分:1)

你使用return false语句在你的东西完成后打破循环

 $('#thing img').each(function(){
     //do some stuff for 1st matched item then

return false;
 });

答案 4 :(得分:1)

查看This but not $(this)

(function($){
    $.fn.me = function(func) {
        func.call(this[0]);
        return this;    
    }
})(jQuery);