2011-06-21 19 views

Respuesta

105

Va a patear mismos ..... :)

$(".popContent:first").html() 
13

puede utilizar :first selectora en este caso

$('.popContent:first').text(); 

DEMO

7
$("div.popContent:first").html() 

debe darle el primer d iv de contenido ("1" en este caso)

0

Usted puede usar la siguiente jQuery expresión

alert(jQuery('div.popContent').eq(0).html()); 
12

primera aparición de clase en la div

$('.popContent').eq(0).html('value to set'); 

Segunda ocurrencia de clase en la div

$('.popContent').eq(1).html('value to set'); 
+0

Aunque no es incorrecta, esto no es óptima. Esto seleccionará todo '.popContent', y cortará un elemento. Los navegadores modernos pueden usar querySelector para seleccionar solo el primer elemento en 1 go (Sí, el navegador aún seleccionará todos, pero el trabajo mucho más rápido) – Martijn

+0

cuál será la forma más rápida de extraer un elemento particular de dom @Martijn –

+0

Sin benchmarking, esto debería funcionar bien: si hay un padre con un ID cerca: '$ ('# the_id'). find ('.contexto pop: primero')', otra vez, simplemente la respuesta actualmente aceptada. – Martijn

2
$("div.popContent:first").html(); 
3

Usted podría utilizar document.querySelector()

Devuelve el primer elemento dentro del documento (usando primero en profundidad pre ordenar el recorrido de los nodos del documento | por el primer elemento en marcado de documentos e iteración a través de nodos secuenciales por orden de cantidad de nodos secundarios) que coincida con el grupo especificado de selectores.

Ya que sólo está buscando primera aparición, tiene mejor rendimiento que jQuery

var count = 1000; 
 
var element = $("<span>").addClass("testCase").text("Test"); 
 
var container = $(".container"); 
 
var test = null; 
 
for(var i = 0; i < count; i++) { 
 
\t container.append(element.clone(true)); 
 
} 
 

 
console.time('get(0)'); 
 
test = $(".testCase").eq(0); 
 
console.timeEnd('get(0)'); 
 
console.log(test.length); 
 

 
console.time('.testCase:first'); 
 
test = $(".testCase:first"); 
 
console.timeEnd('.testCase:first'); 
 
console.log(test.length); 
 

 
console.time('querySelector'); 
 
test = document.querySelector(".testCase"); 
 
console.timeEnd('querySelector'); 
 
console.log(test);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="container"></div>

jsFiddle version of snippet

Cuestiones relacionadas