Java Script Sayfa Nesnesi

Sayfa nesnesi, hiyerarşide pencereden sonra geliyor. Bir sayfa
nesnesi form, resim gibi birçok başka nesneyi içerir. Eğer başka bir
pencere söz konusu değilse, sayfa komutlarımız document. ile başlar
ama uygulama birden çok pencere içeriyorsa pencere isimlerini de
belirtmek gerekir: yenipencere.document. gibi.



Elemanlar Dizisi

Hiyerarşi sıralamasında sayfaların elemanları olduğunu görmüştük
(DHTML sayfasındaki arakladığım grafiği hatırlayın). Bu elemanlar
(form, resim) sayfa üzerinde bir dizi oluşturur. Örneğin sayfa
üzerindeki formlar document.forms dizisi ile ifade edilir. Aynı
şekilde sayfa üzerindeki resimler document.images dizisi halinde
ifade edilebilir. Aşağıdaki uygulamada sayfa üzerinde kaç tane form
olduğunu bulmak için, diziye length kodu atanıyor. Bu kodu Diziler
sayfamızdan hatırlıyoruz, dizinin eleman sayısını buluyor.





Javascript:

<html>

<head>

<title>sayfa Elemanları,</title>

<script language="JavaScript">



function say()

{

alert("sayfada " + document.forms.length + " tane form vardır.")

}



</script>

</head>

<body onload="say()">



<form name="Form1">

Adı:<input><br>

SoyAdı:<input><br>

</form>

<form name="Form2">

Adresi:<input><br>

Telefonu:<input><br>

</form>

<form name="Form3">

E-mail:<input><br>

URL:<input><br>

</form>

<form name="Form4">

Mesleği:<input><br>

</form>



</body>

</html>






Aynı şekilde forumda kaç resim olduğunu görmek için document.images.length
kodunu kullanabilirdik. Daha önce dediğimiz gibi forms ve images
dediklerimiz, birer dizidir(array). Yaptığımız şey, bu dizinin
eleman sayısını bulmak. Ayrıca istediğimiz elemanların tanımlanmış
parametrelerini bu dizi sayesinde öğrenebiliyoruz. Bunun için
dizinin elemanını ve sonra parametre kodunu yazıyoruz: mesela
document.images[3].src kodu ile 4. resmin kaynak adresini edinmiş
oluruz. Aşağıdaki uygulamada sayfa üzerindeki formların tanımlanmış
bgcolor ve name parametrelerini öğreniyoruz.





Javascript:

<html>

<head>

<title>sayfa Elemanları,</title>

<script language="JavaScript">



function say()

{

var isim,renk

isim = "Birinci formun ismi: "+document.forms[0].name

isim += "n İkinci formun ismi: "+document.forms[1].name

isim += "n Üçüncü formun ismi: "+document.forms[2].name

isim += "n Dördüncü formun ismi: "+document.forms[3].name

renk = "Birinci formun rengi: "+document.forms[0].bgcolor

renk += "n İkinci formun rengi: "+document.forms[1].bgcolor

renk += "n Üçüncü formun rengi: "+document.forms[2].bgcolor

renk += "n Dördüncü formun rengi: "+document.forms[3].bgcolor

alert(isim)

alert(renk)

}



</script>

</head>

<body onload="say()">



<form name="AdSoyad" bgcolor="red">

Adı:<input><br>

SoyAdı:<input><br>

</form>

<form name="AdresTel" bgcolor="green">

Adresi:<input><br>

Telefonu:<input><br>

</form>

<form name="EmailURL" bgcolor="pink">

E-mail:<input><br>

URL:<input><br>

</form>

<form name="Meslek" bgcolor="yellow">

Mesleği:<input><br>

</form>



</body>

</html>






Form ve resim elemanları değil, başka sayfa dizilerimiz de var.
Örneğin anchors dizisi ile sayfa üzerindeki anchor`ları ()
tanımlayabiliyoruz. Veya aynı şekilde links dizisi ile sayfadaki
linklerin dizisini, applets ile sayfadaki applet`lerin dizisini
oluşturabiliyoruz.



Sayfa Bilgileri

Yapacağımız yazılımda, sayfayla ilgili bazı bilgileri
kullanabiliriz. Sayfanın başlığını kodla öğrenmek için title sayfa
kodunu kullanırız. Şöyle kısaca listeleyim:







title Sayfanın başlığını metinsel olarak ifade eder.



document.title



URL Sayfanın URL adresini metinsel olarak ifade eder.



document.URL



referrer Sayfanın refere edilen URL adresini metinsel olarak ifade
eder.



document.referrer



domain Sayfanın domain ismini metinsel olarak ifade eder.



document.domain



cookie Sayfanın cookie`lerini metinsel olarak ifade eder.



document.cookie



body Sayfanın gövde bölümünü metinsel olarak ifade eder.



document.body









Javascript:

<html>

<head>

<title>Sayfa bilgileri,</title>

<style>table {visibility:hidden}</style>

<script language="JavaScript">



function sayfa()

{

tablo.style.visibility="visible"

baslik0.innerHTML=document.title

baslik1.innerHTML=document.URL

baslik2.innerHTML=domain

baslik3.innerHTML=document.cookie

baslik4.innerHTML=document.body

baslik5.innerHTML=document.referrer

}



</script>

</head>

<body>



<form>

<input type="button" value="Sayfa Bilgileri" onclick="sayfa()">

</form>

<table id="tablo" cellpadding="3" cellspacing="0" border="1" bgcolor="#d5c481">


<tr><td>Sayfanın başlığı:</td><td>

<a id="baslik0">Görünmüyor</a></td></tr>

<tr><td>Sayfanın URL adresi:</td><td>

<a id="baslik1">Görünmüyor</a></td></tr>

<tr><td>Sayfanın domain ismi:</td><td>

<a id="baslik2">Görünmüyor</a></td></tr>

<tr><td>Sayfanın cookie`si:</td><td>

<a id="baslik3">Görünmüyor</a></td></tr>

<tr><td>Sayfanın gövdesi:</td><td>

<a id="baslik4">Görünmüyor</a></td></tr>

<tr><td>Refere URL adresi:</td><td>

<a id="baslik5">Görünmüyor</a></td></tr>

</table>

</body>

</html>






Bu uygulamamızda bazı bilgiler "" değerini taşıdığı için tabloda yer
almıyor.



Yeni Sayfa Açma

Aynı pencerede başka sayfa açmak için document.open() sayfa
kodunu kullanırız. Bu bomboş bir sayfa demek, bu sayfayı HTML
kodlarıyla doldurmak için write sayfa kodu veya writeln sayfa
kodundan yararlanırız. Bunu JavaScript derslerimizin başından beri
yapıyorduk zaten. writeln kodunun write kodundan farkı en sona satır
koyması. Kısa bir uygulama geliştirelim.





Javascript:

<html>

<head>

<title>Sayfa bilgileri,</title>

<script language="JavaScript">



function yenisayfa()

{

var x=document.open()

document.writeln("<html><title>Aha Size Beyaz Sayfa!</title></html>")


}



</script>

</head>

<body>

<form>

<input type="button" value="Beyaz Sayfa Açalım" onclick="yenisayfa()">


</form>

</body>

</html>



Hanci.org sizlere daha iyi hizmet sunmak için çerezleri kullanıyor.
Hanci.org sitesini kullanarak çerez politikamızı kabul etmiş olacaksınız.
Detaylı bilgi almak için Gizlilik ve Çerez Politikası metnimizi inceleyebilirsiniz.