@@ -324,7 +324,7 @@ tienen una cadena dada en su attributo `class`.
324324
325325{{index "side effect", "removeChild method", "appendChild method", "insertBefore method", [ DOM, construction] , [ DOM, modification] }}
326326
327- Practicamente todo sobre la estructura de datos DOM puede ser cambiado.
327+ Prácticamente todo sobre la estructura de datos DOM puede ser cambiado.
328328La forma del árbol de documento puede ser modificada cambiando las
329329relaciones padre-hijo. Los nodos tienen un método ` remove ` para ser
330330removidos de su nodo padre actual. Para agregar un nodo hijo a un
@@ -344,19 +344,19 @@ primer argumento antes del nodo dado como segundo argumento.
344344```
345345
346346Un nodo puede existir en el documento solamente en un lugar. En
347- consecuencia, insertar el parráfo _ Tres_ enfrente del parráfo _ Uno_
347+ consecuencia, insertar el párrafo _ Tres_ enfrente del párrafo _ Uno_
348348primero lo removerá del final del documento y luego lo insertará
349- en el frente, resuntando en _ Tres_ /_ Uno_ /_ Dos_ . Todas las operaciones
349+ en el frente, resultando en _ Tres_ /_ Uno_ /_ Dos_ . Todas las operaciones
350350que insertan un nodo en alguna parte causarán, a modo de
351- ((effecto secundario)), que el nodo sea removido de su posición actual
351+ ((efecto secundario)), que el nodo sea removido de su posición actual
352352(si es que tiene una).
353353
354354{{index "insertBefore method", "replaceChild method"}}
355355
356356El método ` replaceChild ` es usado para reemplazar a un nodo hijo con
357357otro. Toma dos nodos como argumentos: un nuevo nodo y el nodo que será
358358reemplazado. El nodo reemplazado debe ser un nodo hijo del elemento
359- desde donde se esta llamando el método. Notese que tanto ` replaceChild `
359+ desde donde se está llamando el método. Nótese que tanto ` replaceChild `
360360como ` insertBefore ` esperan que el _ nuevo_ nodo sea el primer argumento.
361361
362362## Creando nodos
@@ -370,7 +370,7 @@ textual alternativa de la imagen.
370370
371371{{index "createTextNode method"}}
372372
373- Esto no solamente involucra remover las images , si no que también
373+ Esto no solamente involucra remover las imágenes , si no que también
374374involucra agregar un nuevo nodo texto que lo reemplace. Los nodos texto
375375son creados con el método ` document.createTextNode ` .
376376
@@ -401,18 +401,18 @@ insertar en el documento para hacer que aparezca en la pantalla.
401401
402402{{index "live data structure", "getElementsByTagName method", "childNodes property"}}
403403
404- El ciclo que recorre las imagenes empieza al final de la lista. Esto es
405- necesario dado que la lista de nodos regresada por un metodo como
404+ El ciclo que recorre las imágenes empieza al final de la lista. Esto es
405+ necesario dado que la lista de nodos regresada por un método como
406406` getElementsByTagName ` (o una propiedad como ` childNodes ` ) se actualiza
407407en tiempo real. Esto es, que se actualiza conforme el documento cambia.
408- Si empezaramos desde el frente, removiendo la primer imagen causaria que
408+ Si empezáramos desde el frente, removiendo la primer imagen causaría que
409409la lista que perdiera su primer elemento de tal manera que la segunda
410- ocacion que el ciclo se repitiera, donde ` i ` es 1, se detendría dado que
411- la longitud de la collecion ahora es también 1.
410+ ocasión que el ciclo se repitiera, donde ` i ` es 1, se detendría dado que
411+ la longitud de la colección ahora es también 1.
412412
413413{{index "slice method"}}
414414
415- Si quieres una colección de nodos _ solida _ , a diferencia de una en
415+ Si quieres una colección de nodos _ sólida _ , a diferencia de una en
416416tiempo real, puedes convertir la colección a un arreglo real llamando
417417` Array.from ` .
418418
@@ -427,22 +427,22 @@ console.log(arreglo.map(s => s.toUpperCase()));
427427
428428Para crear nodos ((elemento)), puedes utilizar el método
429429` document.createElement ` . Este método toma un nombre de etiqueta y
430- regresa un nuevo nodo vacio del nodo dado.
430+ regresa un nuevo nodo vacío del nodo dado.
431431
432432{{index "Popper, Karl", [ DOM, construction] , "elt function"}}
433433
434434{{id elt}}
435435
436436El siguiente ejemplo define una utilidad ` elt ` , la cual crea un
437437elemento nodo y trata el resto de sus argumentos como hijos de ese
438- nodo. Luego entonces, esta funcion es utilizada para agregar una
438+ nodo. Luego entonces, esta función es utilizada para agregar una
439439atribución a una cita.
440440
441441``` {lang: "text/html"}
442442<blockquote id="cita">
443443 Ningún libro puede terminarse jamás. Mientras se trabaja en
444444 el aprendemos solo lo suficiente para encontrar inmaduro
445- el momento en el que nos alejemos de el .
445+ el momento en el que nos alejamos de él .
446446</blockquote>
447447
448448<script>
@@ -458,15 +458,15 @@ atribución a una cita.
458458 document.getElementById("cita").appendChild(
459459 elt("footer", "—",
460460 elt("strong", "Karl Popper"),
461- ", prefacio de la segunda edicion de ",
461+ ", prefacio de la segunda edición de ",
462462 elt("em", "La sociedad abierta y sus enemigos"),
463463 ", 1950"));
464464</script>
465465```
466466
467467{{if book
468468
469- Asi es como se ve el documento resultante:
469+ Así es como se ve el documento resultante:
470470
471471{{figure {url: "img/blockquote.png", alt: "A blockquote with attribution",width: "8cm"}}}
472472
@@ -476,18 +476,18 @@ if}}
476476
477477{{index "href attribute", [ DOM, attributes] }}
478478
479- Los ((attributo ))s de algunos elementos, como ` href ` par los enlaces
480- pueden ser accedidos a traves de una propiedad con el mismo nombre en
479+ Los ((atributo ))s de algunos elementos, como ` href ` par los enlaces
480+ pueden ser accedidos a través de una propiedad con el mismo nombre en
481481el objeto ((DOM)) del elemento. Este es el caso para los atributos
482- estandar más comunmente utilizados.
482+ estándar más comúnmente utilizados.
483483
484484{{index "data attribute", "getAttribute method", "setAttribute method", attribute}}
485485
486486Pero HTML te permite establecer cualquier atributo que quieras en los
487- nodos. Esto puede ser util debido a que te permite almacenar información
487+ nodos. Esto puede ser útil debido a que te permite almacenar información
488488extra en un documento. Sin embargo, si creas tus propios nombres de
489489atributo, dichos atributos no estarán presentes como propiedades en el
490- nodo del elemento. En vez de eso, tendras que utilizar los métodos
490+ nodo del elemento. En vez de eso, tendrás que utilizar los métodos
491491` getAttribute ` y ` setAttribute ` para trabajar con ellos.
492492
493493``` {lang: "text/html"}
@@ -505,30 +505,30 @@ nodo del elemento. En vez de eso, tendras que utilizar los métodos
505505```
506506
507507Se recomienda anteponer los nombres de dichos atributos inventados con
508- ` data- ` para asegurarse de que no conflictuan con ningun otro atributo.
508+ ` data- ` para asegurarse de que no conflictúan con ningún otro atributo.
509509
510510{{index "getAttribute method", "setAttribute method", "className property", "class attribute"}}
511511
512- Existe un atributo comunmente usado, ` class ` , que es una ((palabra clave))
513- en el lenguaje JavaScript. Por motivos historicos , algunas
514- implementaciones antiguas de JavaScript podrian no manejar nombres de
512+ Existe un atributo comúnmente usado, ` class ` , que es una ((palabra clave))
513+ en el lenguaje JavaScript. Por motivos históricos , algunas
514+ implementaciones antiguas de JavaScript podrían no manejar nombres de
515515propiedades que coincidan con las palabras clave-la propiedad utilizada
516- para acceder a este atributo tiene por nombre ` className ` . Tambien
517- puedes acceder a el bajo su nombre real, ` "class" ` , utilizando los
518- metodos ` getAttribute ` and ` setAttribute ` .
516+ para acceder a este atributo tiene por nombre ` className ` . También
517+ puedes acceder a él bajo su nombre real, ` "class" ` , utilizando los
518+ métodos ` getAttribute ` y ` setAttribute ` .
519519
520520## Layout
521521
522522{{index layout, "block element", "inline element", "p (HTML tag)", "h1 (HTML tag)", "a (HTML tag)", "strong (HTML tag)"}}
523523
524524Tal vez hayas notado que diferentes tipos de elementos se exponen
525- de manera distinta. Algunos, como en el caso de los parrafos
525+ de manera distinta. Algunos, como en el caso de los párrafos
526526(` <p> ` ) o encabezados (` <h1> ` ), ocupan todo el ancho del documento
527- y se renderizan en lineas separadas. A estos se les conoce como
527+ y se renderizan en líneas separadas. A estos se les conoce como
528528elementos _ block_ (bloque). Otros, como los enlaces (` <a> ` ) o el
529- elemento ` <strong> ` , se renderizan en la misma linea con su texto
529+ elemento ` <strong> ` , se renderizan en la misma línea con su texto
530530circundante. Dichos elementos se les conoce como elementos
531- _ inline_ (en la misma linea ).
531+ _ inline_ (en la misma línea ).
532532
533533{{index drawing}}
534534
@@ -541,11 +541,11 @@ utiliza para trazar el documento.
541541
542542Se puede acceder al tamaño y la posición de un elemento pueden desde
543543JavaScript. Las propiedades ` offsetWidth ` y ` offsetHeight ` te dan el
544- espacio que el elemento ocupa en ((pixel))es. Un pixel es la unidad
545- basica de las medidas del navegador. Tradicionalmente correspondia al
544+ espacio que el elemento ocupa en ((pixel))es. Un píxel es la unidad
545+ básica de las medidas del navegador. Tradicionalmente correspondía al
546546punto más pequeño que la pantalla podía trazar, pero en los monitores
547547modernos, que pueden trazar puntos _ muy_ pequeños, este puede no ser
548- más el caso, por lo que un pixel del navegado puede abarcar varios
548+ más el caso, por lo que un píxel del navegador puede abarcar varios
549549puntos en la pantalla.
550550
551551De manera parecida, ` clientWidth ` y ` clientHeight ` te dan el tamaño
578578La manera más efectiva de encontrar la posición precisa de un elemento
579579en la pantalla es el método ` getBoundingClientRect ` . Este devuelve un
580580objeto con las propiedades ` top ` , ` bottom ` , ` left ` , y ` right ` , indicando
581- las posiciones de pixeles de los lados el elemento en relacion con la
581+ las posiciones de pixeles de los lados el elemento en relación con la
582582parte superior izquierda de la pantalla. Si los quieres relativos a
583- todo el documento, deberas agregar la posición actual del scroll, la
583+ todo el documento, deberás agregar la posición actual del scroll, la
584584cual puedes obtener en los _ bindings_ ` pageXOffset ` y ` pageYOffset ` .
585585
586586{{index "offsetHeight property", "getBoundingClientRect method", drawing, laziness, performance, efficiency}}
@@ -590,19 +590,19 @@ intereses de velocidad, los motores de los navegadores no
590590reestructuran inmediatamente un documento cada vez que lo cambias,
591591en cambio, se espera lo más que se pueda. Cuando un programa de
592592JavaScript que modifica el documento termina de ejecutarse, el
593- navegador tendra que calcular una nueva estructura para trazar el
593+ navegador tendrá que calcular una nueva estructura para trazar el
594594documento actualizado en la pantalla. Cuando un programa _ solicita_
595595la posición o el tamaño de algo, leyendo propiedades como ` offsetHeight `
596- o llamando a ` getBoundingClientRect ` , proveer la informacion correcta
596+ o llamando a ` getBoundingClientRect ` , proveer la información correcta
597597también requiere que se calcule una nueva estructura.
598598
599599{{index "side effect", optimization, benchmark}}
600600
601- A un programa que repeditamente alterna entre leer la información de la
602- estructura DOM y cambiar el DOM fuerza a que hayan bastantes calculos
603- de estructura, y por consecuencia se ejecutara lentamente. El siguiente
604- codigo es un ejemplo de esto. Contiene dos programas diferentes que
605- construyen una linea de _ X_ caracteres con 2,000 pixeles de ancho y
601+ A un programa que repetidamente alterna entre leer la información de la
602+ estructura DOM y cambiar el DOM fuerza a que haya bastantes cálculos
603+ de estructura, y por consecuencia se ejecutará lentamente. El siguiente
604+ código es un ejemplo de esto. Contiene dos programas diferentes que
605+ construyen una línea de _ X_ caracteres con 2,000 pixeles de ancho y
606606que mide el tiempo que toma cada uno.
607607
608608``` {lang: "text/html", test: nonumbers}
0 commit comments