Foros del Web » Programando para Internet » Jquery »

JQUERY - DOM rapidez VS validacion

Estas en el tema de JQUERY - DOM rapidez VS validacion en el foro de Jquery en Foros del Web. Tengo una duda. En la validacion web se enseña que no pueden haber elementos con divs repetidos. No puede haber: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código HTML: Ver ...
  #1 (permalink)  
Antiguo 09/10/2010, 09:44
 
Fecha de Ingreso: junio-2009
Mensajes: 309
Antigüedad: 14 años, 10 meses
Puntos: 5
JQUERY - DOM rapidez VS validacion

Tengo una duda. En la validacion web se enseña que no pueden haber elementos con divs repetidos.

No puede haber:

Código HTML:
Ver original
  1. <div id="bloque1">
  2.    <div id="contenido"></div>
  3. </div>
  4. <div id="bloque2">
  5.    <div id="contenido"></div>
  6. </div>

Se dice de poner el id contenido como una clase por ejemplo o id contenido1 y contenido2.


Con jquery es mucho mas rapido moverse por el DOM por ID´s que por clases:
Es mas rapido $("#contenido1") que $(".contenido")

Pero el problema es que cuando cargas cosas por ajax dinamicamente es dificil luego ir aplicando IDs dinamicamente y luego saber su nombre. Hay que hacer un par de lineas de mas. Entonces, realmente pasa algo si se repiten nombres de ID. Es muy grabe?
  #2 (permalink)  
Antiguo 09/10/2010, 10:13
Avatar de tredio  
Fecha de Ingreso: noviembre-2008
Ubicación: Carabobo
Mensajes: 466
Antigüedad: 15 años, 4 meses
Puntos: 66
Respuesta: JQUERY - DOM rapidez VS validacion

como lo dice el nombre ID, es un identificador, es por ello que debe ser unico en toda la pagina, aunque he probado y jQuery al hacer $('#id_elemento') si busca todos los elementos que tengan ese id, pero no es lo correcto.
__________________
Extension Google Chrome
dar las gracias no cuesta nada :D
  #3 (permalink)  
Antiguo 09/10/2010, 14:06
 
Fecha de Ingreso: junio-2009
Mensajes: 309
Antigüedad: 14 años, 10 meses
Puntos: 5
Respuesta: JQUERY - DOM rapidez VS validacion

Exacto, un each coje todos, lo trabaja en ese sentido como si fuese una clase, y en la anidacion lo encuentra igual... pero lo que no se por que no es lo correcto, todo el mundo lo dice y yo tb lo he aprendido asi, pero me pregunto cual es el problema.
  #4 (permalink)  
Antiguo 09/10/2010, 16:33
Avatar de tredio  
Fecha de Ingreso: noviembre-2008
Ubicación: Carabobo
Mensajes: 466
Antigüedad: 15 años, 4 meses
Puntos: 66
Respuesta: JQUERY - DOM rapidez VS validacion

ese es el caso de jQuery que lo puedes hacer asi, pero la funcion que usa javascript para obtener un objeto por id solo devuelve uno, y seria el primero que encuentre, la funcion es getElementById(), y no es lo correcto por que un id es un identificador unico aunque si se pueda ponerse a varios elementos no es la idea. acá te dejo un link que te pudiera aclarar.

http://html.conclase.net/w3c/html401...l.html#h-7.5.2
__________________
Extension Google Chrome
dar las gracias no cuesta nada :D
  #5 (permalink)  
Antiguo 15/10/2010, 05:19
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 4 meses
Puntos: 65
Respuesta: JQUERY - DOM rapidez VS validacion

mirá esto y saca tus conclusiones

En el html tengo 2 div con #uno

Suponiendo que no tiene sentido usar un identificador entonces si hago un alert seleccionando ese id deberia decir 2 y si elimino el #uno cuando ejecutes el script no deberia aparecer nada en pantalla, ¿no?

Pero fijate

Código HTML:
Ver original
  1.     <head>
  2.         <title>Ejemplon</title>
  3.         <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
  4.     </head>
  5.         <script type="text/javascript">
  6.             $( function (){
  7.                 alert( "Cantidad #uno "+ $('#uno').length );
  8.                 $('#uno').remove();
  9.             });
  10.         </script>
  11.     <style>
  12.         #uno{background:blue; margin:5px; width:100px; height:100px}
  13.     </style>
  14.     <body>
  15.         <div id="uno">uno</div>
  16.         <div id="uno">dos</div>
  17.     </body>
  18. </html>

Cita:
es dificil luego ir aplicando IDs dinamicamente y luego saber su nombre
Vos sabes la estrucura del documento, entonces aprendé a moverte
fijate bien los métodos http://api.jquery.com/category/traversing/ next, prev, closest, parent, nextAll etc etc
aparte de grabe es complicado, no solamente para javascript sino también para css, semanticamente, si aplicas algo a un id ya sabes que es para UN elemento, imaginate si tenes un fondo para un elemento con un id pero cuando cambias ese fondo en el css cambian varias cosas en varios elementos, por ahi vos vas a saber pero si hagarra otro? yo pensaria que estoy loco jaja
encima cuando haces algo y volves a agarrar dentro de 2 meses ese código ya es como si lo hubiese escrito otro

Última edición por Dany_s; 15/10/2010 a las 05:28

Etiquetas: dom, rapidez
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:08.