2012-07-09 20 views
5

Tengo div que contienen aproximadamente 100 más div elementos. Cada elemento div tiene propiedades top y left. ¿Cómo puedo encontrar un div que tenga las propiedades más grandes de left?
Necesito el mejor rendimiento. Gracias.buscar elemento por propiedad de css

+0

Creo que no hay una manera de salir de la comprobación de todos ellos ... – Lix

+2

Yo creo que hay que recorrer todos divs –

+2

posible duplicado de ':)' [jQuery: cómo seleccionar todos los elementos que tienen una propiedad de CSS específica aplicada] (http://stackoverflow.com/questions/1220834/jquery-how-to-select-all-elements-that -have-a-specific-css-property-applied) –

Respuesta

3

Prueba de esto,

Live Demo

var divWithTopLeft = null; 
var maxLeft = 0; 
$('div').each(function(){ 
    left = this.style.left.replace('px',''); 
    if(left > maxLeft) 
    { 
     maxLeft = left; 
     divWithTopLeft = this; 
    } 
}); 
+0

+1 para la solución perfecta y live de mo link .. –

+0

Gracias @ patel.milanb – Adil

+0

Jfyi, si define '.class1 {position: relative; } 'en el violín, también puede usar la propiedad' this.offsetLeft' en lugar del 'this.style.left.replace ('px', '');' para hacer que el código se ejecute un poco más rápido. – Stano