2012-08-02 3 views
7

¿Cómo guardo los datos en la matriz dentro de un bucle?¿Cómo guardo los datos en la matriz dentro de un bucle? JQuery

var images; 
    var i = 0; 

    $('#cover div').each(function() 
    { 
     alert($(this).attr('id')); 
     //I should store id in an array 
    }); 


    <div id="cover"> 
     <div id="slider_1"><p class="content">SLIDER ONE</p></div> 
     <div id="slider_2"><p class="content">SLIDER TWO</p></div> 
     <div id="slider_3"><p class="content">SLIDER THREE</p></div> 
    </div> 

Respuesta

23

Prueba de esto, otra

var arr = []; 
i = 0; 
$('#cover div').each(function() 
{ 
     alert($(this).attr('id')); 
     arr[i++] = $(this).attr('id'); 
     //I should store id in an array 
}); 

camino para conseguir Identificación usando javascript objeto en lugar de jQuery para aumentar el rendimiento.

var arr = []; 
i = 0; 
$('#cover div').each(function() 
{ 
     arr[i++] = this.id; 
}); 

Editar También puede utilizar jQuery map()

Live Demo

arr = $('#cover div').map(function(){ 
    return this.id; 
}); 
+0

Me golpearon también:/+1 –

+0

Tarde en 5 segundos: '( – Sourav

+3

¿Por qué no simplemente' empujar 'en la matriz en lugar de perder el tiempo con un contador? O bien utilice el argumento de índice para la función de devolución de llamada '.each'. – Blazemonger

2

Javascript matrices tienen un método push (el) así:

var images; 
var i = 0; 

$('#cover div').each(function() 
{ 
    alert($(this).attr('id')); 
    images.push($(this).attr('id')); 
}); 

<div id="cover"> 
    <div id="slider_1"><p class="content">SLIDER ONE</p></div> 
    <div id="slider_2"><p class="content">SLIDER TWO</p></div> 
    <div id="slider_3"><p class="content">SLIDER THREE</p></div> 
</div> 
+0

demasiado lento :(... – Jaro

+0

Voy a mantener esto es la mente. Gracias – BentCoder

Cuestiones relacionadas