Yanıtlar:
Windowana JavaScript nesne kökü, yani global objecttarayıcıda, belge nesne modelinin kökü olarak da ele alınabilir. Buna şu şekilde erişebilirsiniz:window
window.screenya da sadece screenfiziksel ekran boyutları hakkında küçük bir bilgi nesnesidir.
window.documentya da sadece documentpotansiyel olarak görünür (ya da daha iyisi: işlenmiş) belge nesne modeli / DOM'un ana nesnesidir.
Yana windowküresel nesnedir sadece mülk adıyla hiçbirini özelliklerine başvurabilir - Sen yazmak zorunda kalmamak için window.- bu çalışma zamanı tarafından anladım edilecektir.
windowile viewport . A window, tarayıcı sekmesi için JavaScript nesnesidir veya <iframe>(veya kullanımdan kaldırılmıştır <frame>). Görünüm verilen dikdörtgen olan documentsekme ya da çerçeve içinde görülür.
Pencereyi tarayıcıya yükleyen ilk şey. Bu pencere nesnesi, length, innerWidth, innerHeight, name, kapatılmışsa, ebeveynleri ve daha fazlası gibi özelliklerin çoğuna sahiptir.
O zaman belge nesnesi ne olacak? Belge nesnesi, tarayıcıya yüklenecek olan html, aspx, php veya başka bir belgedir. Belge aslında pencere nesnesinin içine yüklenir ve başlık, URL, çerez vb. Gibi özellikleri vardır. Bu gerçekten ne anlama geliyor? Bu, pencere için bir özelliğe erişmek istiyorsanız, window.property, belge ise window.document.property olduğu anlamına gelir ve bu da document.property olarak kısaca kullanılabilir.
Bu yeterince basit görünüyor. Ancak bir IFRAME piyasaya sürüldüğünde ne olur?
Kısaca, aşağıda daha ayrıntılı olarak,
window bu bağlamın JavaScript'i için yürütme içeriği ve genel nesnedocument HTML ayrıştırılarak başlatılan DOM içeriyorscreen fiziksel ekranın tam ekranını açıklarBu nesnelerle ilgili ayrıntılar için W3C ve Mozilla referanslarına bakın . Bu üçü arasındaki en temel ilişki, her tarayıcı sekmesinin kendine windowve windowsahip window.documentve window.screenözelliklerine sahip olmasıdır. Tarayıcı sekmesi en windowböylece küresel bağlamdır documentve screenbakın window.documentve window.screen. Üç nesne hakkında daha fazla ayrıntı aşağıda, Flanagan'ın JavaScript'ini izliyor: Kesin Kılavuz .
windowHer tarayıcı sekmesinin kendi üst düzey windownesnesi vardır. Her <iframe>(ve kullanımdan kaldırılmış <frame>) öğenin, windowüst pencerede yuvalanmış kendi nesnesi de vardır. Bu pencerelerin her biri kendi ayrı küresel nesnesini alır. window.windowHer zaman ifade eder window, ancak window.parentve window.toppencereleri çevreleyen diğer yürütme bağlamlarda erişim sağlayan başvurabilir. Aşağıda documentve bunlara ek olarak screen, windowözellikler şunları içerir:
setTimeout()ve setInterval()olay işleyicilerini bir zamanlayıcıya bağlamalocation geçerli URL'yi vermekhistoryyöntemlerle back()ve forward()sekmenin değiştirilebilir geçmişini vermenavigator tarayıcı yazılımını tanımlamadocumentHer windownesnenin documentoluşturulacak bir nesnesi vardır . Benzersiz bir kimlik atandığında genel nesneye HTML öğeleri eklendiğinden bu nesneler kısmen karışır. Örneğin, HTML snippet'inde
<body>
<p id="holyCow"> This is the first paragraph.</p>
</body>
paragraf öğesine aşağıdakilerden herhangi biri tarafından başvurulabilir:
window.holyCow veya window["holyCow"]document.getElementById("holyCow")document.body.firstChilddocument.body.children[0]screenwindowNesne aynı zamanda bir yer alır screen, fiziksel görüntü açıklayan özelliklere sahip bir nesne:
ekran özellikleri widthve heighttam ekran
ekran özelliklerini seçin availWidthve availHeightaraç çubuğunu atlayın
Ekranın görüntülenen belgeyi görüntüleyen kısmı, işletim sistemiyle etkileşimler hakkında konuşurken bir uygulamanın ekranın bir bölümünü pencere olarak adlandırdığımız için potansiyel olarak kafa karıştırıcı olduğu için JavaScript'teki görünüm alanıdır. getBoundingClientRect()Herhangi birine göre yöntem documentelemanı ile bir nesne döndürür top, left, bottomve rightgörünüm elemanın konumunu tanımlayan özellikleri.
window.onloadbelge nesnesini kullanmaya eşdeğer bir talimat var mı?
windowGerçek küresel nesnedir.
screenO kullanıcının ekranında ilgili özelliklerini içeren, ekranıdır.
documentDOM nerede olduğunu.
documentayrıca olabilir window.document, screenolabilir window.screenve windowolabilir window.window(veya window.window.window) :-P
windowglobal bir değişken, bu onu global windownesnenin bir özelliği haline getiriyor . :-)
windowArayabileceğin böylece, her şeyi içerir window.screenve window.documentbu öğeleri alır. Her bir nesnenin içeriğini güzel bir şekilde bastırarak bu kemanı kontrol edin: http://jsfiddle.net/JKirchartz/82rZu/
Ayrıca nesnenin içeriğini kundakçı / dev araçlarında şöyle görebilirsiniz:
console.dir(window);
console.dir(document);
console.dir(screen);
windowher şeyin köküdür, screensadece ekran boyutlarına sahiptir ve documenten iyi DOM nesnesidir. bu yüzden windowbir süper gibi düşünebilirsiniz document...
Pencere , tarayıcıya ilk yüklenen şeydir. Bu pencere nesnesi, length, innerWidth, innerHeight, name, kapatılmışsa, ebeveynleri ve daha fazlası gibi özelliklerin çoğuna sahiptir.
Belge nesnesi, tarayıcıya yüklenecek olan html, aspx, php veya başka bir belgedir. Belge aslında pencere nesnesinin içine yüklenir ve başlık, URL, çerez vb. Gibi özellikleri vardır. Bu gerçekten ne anlama geliyor? Bu, pencere için bir özelliğe erişmek istiyorsanız, window.property, belge ise window.document.property olduğu anlamına gelir ve bu da document.property olarak kısaca kullanılabilir.