Tengo un diseño similar a este:
<div id="..."><img src="..."></div>
y me gustaría usar un selector jQuery para seleccionar al niño imgdentro del divclic.
Para obtener el div, tengo este selector:
$(this)
¿Cómo puedo hacer que el niño imguse un selector?

También podrías usar
que devolvería todos los
imgs que son descendientes de ladivfuente
$(this).children('img')que sería mejor. por ejemplo,<div><img src="..." /><div><img src="..." /></div></div>porque presumiblemente el usuario quiere encontrar imgs de primer nivel.Si necesita obtener el primero
imgque está exactamente en un nivel, puede hacerlofuente
:firstSolo coincide con " bajar exactamente un nivel ", o coincide con el "primero"imgque se encontró?.children()es de donde viene el "bajar exactamente un nivel" y:firstes de donde vino el "primero"..find()lugar de.children()thisya era una referencia al<div>contenido<img>, sin embargo, si tiene varios niveles de etiqueta para atravesar la referencia que tenía, definitivamente podría componer más de unachildren()llamadaSi su etiqueta DIV es seguida inmediatamente por la etiqueta IMG, también puede usar:
fuente
Los niños directos son
fuente
Puedes encontrar todos los elementos img del elemento principal div a continuación
Si quieres un elemento img específico, puedes escribir así
Su div contiene solo un elemento img. Entonces para esto a continuación es correcto
Pero si tu div contiene más elementos img como a continuación
entonces no puede usar el código superior para encontrar el valor alternativo del segundo elemento img. Entonces puedes probar esto:
Este ejemplo muestra una idea general de cómo puede encontrar un objeto real dentro del objeto padre. Puede usar clases para diferenciar su objeto hijo. Eso es fácil y divertido. es decir
Puedes hacer esto de la siguiente manera:
y más específico como:
Puede usar find o children como el código anterior. Para más información, visite http://api.jquery.com/children/ y encuentre http://api.jquery.com/find/ . Ver ejemplo http://jsfiddle.net/lalitjs/Nx8a6/
fuente
Formas de referirse a un niño en jQuery. Lo resumí en el siguiente jQuery:
fuente
Sin conocer la ID del DIV, creo que podría seleccionar el IMG de esta manera:
fuente
Prueba este código:
fuente
$($(this).children()[0]).$(this:first-child)$($(this).children()[x])usar$(this).eq(x)o si quieres el primero, solo$(this).first().Puede usar cualquiera de los siguientes métodos:
1 encontrar ():
2 niños():
fuente
jQuery's
eaches una opción:fuente
Puede usar Child Selecor para hacer referencia a los elementos secundarios disponibles dentro del elemento primario.
Y lo siguiente es si no tiene referencia
$(this)y desea hacer referenciaimgdisponible dentrodivde otra función.fuente
También esto debería funcionar:
fuente
thisAquí hay un código funcional, puede ejecutarlo (es una demostración simple).
Cuando haces clic en el DIV obtienes la imagen de diferentes métodos, en esta situación "esto" es el DIV.
¡Espero eso ayude!
fuente
Puede tener de 0 a muchas
<img>etiquetas dentro de su<div>.Para encontrar un elemento, use un
.find().Para mantener su código seguro, use a
.each().Usar
.find()y.each()juntos evita errores de referencia nulos en el caso de 0<img>elementos, al tiempo que permite el manejo de múltiples<img>elementos.fuente
$("body").off("click", "#mydiv").on("click", "#mydiv", function() {event.stopImmediatePropagation()el elemento para evitar que eso suceda.fuente
Podrías usar
fuente
Si su img es exactamente el primer elemento dentro de div, intente
Mostrar fragmento de código
fuente