Cómo seleccionar un grupo de etiquetas que no tienen los niños de un determinado tipo

jQuery es hasta la versión 1.4! Además de nuevas características y la "costumbre" reescribir el código, todos los documentos ha sido revisado de una manera muy fácil de leer que antes. impostato a _blank ! Sin embargo, vemos el tema de este post, problema: sumar, utilizando jQuery, una clase de todas las etiquetas a poseer el atributo target establecido en _blank !
Esto ya lo hemos visto en el fragmento muy corto: enlace jQuery objetivo auto blanco . La cuestión es que las imágenes suelen tener un enlace en nueva ventana y agregar otra imagen a la tarjeta no es muy agradable. Para asegurarse de que enlace concreto de la clase no se aplica, hay dos maneras:

Agregar una clase

, non vogliamo mostrino l'immagine. El primer método, que se aplica a los enlaces, es agregar una clase, por ejemplo noexternal , todos los enlaces que, a pesar de que contiene el atributo target="_blank" , no quiere mostrar la imagen. En la práctica, quiere asegurarse de que jQuery no tenerlas en cuenta.

1
) . not ( '.noexternal' ) . addClass ( 'external' ) ; $ ('A [target = _blank]') No ('Noexternal.) AddClass ("externos")..;

Este meotdo, mientras que eficiente, sin embargo, obligado a convertir en un enlace que desea excluir de la clase noexternal :

1
2
3
"blank" href = "http://www.undolog.com" > Link esterno con immagine < / a > < un target = "blank" href = "http://www.undolog.com"> Enlace de la imagen externa </ un >

"blank" class = "noexternal" href = "http://www.appleside.it" > Link esterno senza immagine < / a > < un target = "blank" class = "noexternal" href = "http://www.appleside.it"> Enlace externo sin una imagen </ un >

Use un ciclo de cada uno ()

Por otra parte, para desactivar el uso de la clase de todos los enlaces externos que contienen una imagen, podemos utilizar:

1
2
3
4
5
6
7
) . each ( $ ('A [target = _blank]: No (Noexternal). ") Cada uno (.
function () {
this ; var yo = este;
! ( $ ( me ) . children ( 'img' ) . length > 0 ) ) if (($ (I). los niños ('img'). longitud> 0))
. addClass ( 'external' ) ; AddClass $ (I) ("externos").;
}
);

Se realiza la misma función que el anterior con la adición de la prueba si la imagen de "primer" niño. . Si es así, la clase external a la etiqueta no se añade a .
Sería interesante ver si hay una manera de hacer lo mismo sin necesidad de utilizar un "ciclo" each() !

No hay comentarios para esta entrada

Deja un comentario

XHTML PERMISO TAG: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> código de inserción:
 <pre></pre> // blocco generico <code></code> // blocco generico [cc_actionscript][/cc_actionscript] // Actionscript [cc_actionscript3][/cc_actionscript3] // Actionscript 3 [cc_css][/cc_css] // CSS Style Sheet [cc_html][/cc_html] // HTML [cc_js][/cc_js] // Javascript [cc_objc][/cc_objc] // Objective-C [cc_php][/cc_objc] // PHP [cc_sql][/cc_sql] // SQL 


Dejar de SOPA