validacion - validar formulario javascript antes de enviar
¿Cuál es la diferencia entre ventana, pantalla y documento en Javascript? (6)
Bueno, la ventana es lo primero que se carga en el navegador. Este objeto de ventana tiene la mayoría de las propiedades, como length, innerWidth, innerHeight, name, si se ha cerrado, sus padres y más.
¿Qué pasa con el objeto del documento? El objeto del documento es su html, aspx, php u otro documento que se cargará en el navegador. El documento realmente se carga dentro del objeto ventana y tiene propiedades disponibles como título, URL, cookie, etc. ¿Qué significa esto realmente? Esto significa que si desea acceder a una propiedad para la ventana, es window.property, si es un documento, es window.document.property, que también está disponible en breve como document.property.
Eso parece bastante simple. Pero, ¿qué sucede una vez que se introduce un IFRAME?
Veo que estos términos se usan indistintamente como el entorno global para el DOM. ¿Cuál es la diferencia (si hay una) y cuándo debo usar cada una?
En pocas palabras, con más detalles a continuación,
-
window
es el contexto de ejecución y el objeto global para JS de ese contexto -
document
contiene el HTML -
screen
describe la pantalla completa de la pantalla física
Consulte W3C referencias de W3C y Mozilla para obtener detalles sobre estos objetos. La relación más básica entre los tres es que cada pestaña del navegador tiene su propia window
, y una window
tiene propiedades window.document
y window.screen
. La window
la pestaña del navegador es el contexto global, por lo que el document
y la screen
referencia a window.document
y window.screen
. Más detalles sobre los tres objetos están a continuación, siguiendo el JavaScript de Flanagan: Guía definitiva .
window
Cada pestaña del navegador tiene su propio objeto de window
nivel superior. Cada elemento <iframe>
(y obsoleto <frame>
) también tiene su propio objeto de window
anidado dentro de una ventana principal. Cada una de estas ventanas obtiene su propio objeto global por separado. window.window
siempre se refiere a la window
, pero window.parent
y window.top
pueden referirse a las ventanas window.top
, dando acceso a otros contextos de ejecución. Además del document
y la screen
describen a continuación, window
propiedades de la window
incluyen
-
setTimeout()
ysetInterval()
controladores de eventos de enlace a un temporizador -
location
dando la URL actual -
history
con los métodosback()
yforward()
dando el historial mutable de la pestaña -
navigator
describe el software del navegador
document
Cada objeto de window
tiene un objeto de document
para representar. Estos objetos se confunden en parte porque los elementos HTML se agregan al objeto global cuando se les asigna una ID única. Por ejemplo, en el fragmento de HTML
<body>
<p id="holyCow"> This is the first paragraph.</p>
</body>
el elemento de párrafo puede ser referenciado por cualquiera de los siguientes:
-
window.holyCow
owindow["holyCow"]
-
document.getElementById("holyCow")
-
document.body.firstChild
-
document.body.children[0]
screen
El objeto window
también tiene un objeto de screen
con propiedades que describen la pantalla física:
las propiedades de pantalla
width
yheight
son la pantalla completapropiedades de pantalla
availWidth
yavailHeight
omiten la barra de herramientas
La parte de una pantalla que muestra el documento renderizado es la ventana gráfica en JavaScript, que es potencialmente confusa porque llamamos a la porción de la pantalla de una aplicación una ventana cuando hablamos de interacciones con el sistema operativo. El método getBoundingClientRect()
de cualquier elemento de document
devolverá un objeto con las propiedades top
, left
, bottom
y right
describen la ubicación del elemento en la ventana gráfica.
La window
es el objeto global real.
La screen
es la pantalla, contiene propiedades sobre la pantalla del usuario.
El document
es donde está el DOM.
la window
contiene todo, por lo que puede llamar a window.screen
y window.document
para obtener esos elementos. Mira este violín, imprimiendo los contenidos de cada objeto: http://jsfiddle.net/JKirchartz/82rZu/
También puede ver el contenido del objeto en las herramientas firebug / dev como esta:
console.dir(window);
console.dir(document);
console.dir(screen);
window
es la raíz de todo, la screen
solo tiene dimensiones de pantalla y el document
es el principal objeto DOM. para que pueda pensar que la window
es como un super document
...
Window
es la raíz principal del objeto JavaScript, también conocido como el objeto global en un navegador, también se puede tratar como la raíz del modelo de objeto del documento. Puede acceder a ella como window
en la mayoría de los casos (en el navegador);
window.screen
es un pequeño objeto de información sobre las dimensiones de la pantalla física.
window.document
o simplemente document
es el objeto principal del modelo de objeto de documento visible (o mejor aún: renderizado) / DOM.
La ventana es lo primero que se carga en el navegador. Este objeto de ventana tiene la mayoría de las propiedades, como length, innerWidth, innerHeight, name, si se ha cerrado, sus padres y más.
El objeto del documento es su html, aspx, php u otro documento que se cargará en el navegador. El documento realmente se carga dentro del objeto ventana y tiene propiedades disponibles como título, URL, cookie, etc. ¿Qué significa esto realmente? Esto significa que si desea acceder a una propiedad para la ventana, es window.property, si es un documento, es window.document.property, que también está disponible en breve como document.property.