Yanıtlar:
Window
ana JavaScript nesne kökü, yani global object
tarayıcıda, belge nesne modelinin kökü olarak da ele alınabilir. Buna şu şekilde erişebilirsiniz:window
window.screen
ya da sadece screen
fiziksel ekran boyutları hakkında küçük bir bilgi nesnesidir.
window.document
ya da sadece document
potansiyel olarak görünür (ya da daha iyisi: işlenmiş) belge nesne modeli / DOM'un ana nesnesidir.
Yana window
kü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.
window
ile 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 document
sekme 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 window
ve window
sahip window.document
ve window.screen
özelliklerine sahip olmasıdır. Tarayıcı sekmesi en window
böylece küresel bağlamdır document
ve screen
bakın window.document
ve window.screen
. Üç nesne hakkında daha fazla ayrıntı aşağıda, Flanagan'ın JavaScript'ini izliyor: Kesin Kılavuz .
window
Her tarayıcı sekmesinin kendi üst düzey window
nesnesi 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.window
Her zaman ifade eder window
, ancak window.parent
ve window.top
pencereleri çevreleyen diğer yürütme bağlamlarda erişim sağlayan başvurabilir. Aşağıda document
ve 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 vermekhistory
yöntemlerle back()
ve forward()
sekmenin değiştirilebilir geçmişini vermenavigator
tarayıcı yazılımını tanımlamadocument
Her window
nesnenin document
oluş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.firstChild
document.body.children[0]
screen
window
Nesne aynı zamanda bir yer alır screen
, fiziksel görüntü açıklayan özelliklere sahip bir nesne:
ekran özellikleri width
ve height
tam ekran
ekran özelliklerini seçin availWidth
ve availHeight
araç ç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 document
elemanı ile bir nesne döndürür top
, left
, bottom
ve right
görünüm elemanın konumunu tanımlayan özellikleri.
window.onload
belge nesnesini kullanmaya eşdeğer bir talimat var mı?
window
Gerçek küresel nesnedir.
screen
O kullanıcının ekranında ilgili özelliklerini içeren, ekranıdır.
document
DOM nerede olduğunu.
document
ayrıca olabilir window.document
, screen
olabilir window.screen
ve window
olabilir window.window
(veya window.window.window
) :-P
window
global bir değişken, bu onu global window
nesnenin bir özelliği haline getiriyor . :-)
window
Arayabileceğin böylece, her şeyi içerir window.screen
ve window.document
bu öğ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);
window
her şeyin köküdür, screen
sadece ekran boyutlarına sahiptir ve document
en iyi DOM nesnesidir. bu yüzden window
bir 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.