| Ana Sayfa | Dersler | Bize Ulaşın  


  Giriş
  Değişkenler
  If-Then-Else
  Olaylar
  Teori DOM
  Pencere Açma
  Çerçeveler
 

 

Çerçeveler

Frames (Çerçeveler)

   Javascriptte frameler pencerelerle eşit işlem görür. Sanırım bir pencerenin içeriğinin nasıl değiştiğini hatırlarsınız. Hepsi frameler içinde geçerlidir. Basit anlatımla, her frame ayrı bir pencere olmalıdır. Erişim şekli haricinde başka hiç bir fark yoktur.

Frameler arası komünikasyon

Buda aynı HTMLde olduğu gibi çalışır. Prensip aynıdır. HTML ile, başka bir frame'e bağlanmak için target="frameadı" kullanırsınız, javascript ile parent.framename.location.href = 'http://www.turkmcsd.net'. Gördünüz mü? nekadar kolay. Eğer, benimsayfam adlı frame a link verecek bir javascript isterseniz, şöyle yazacaksınız:

<a href="#" onClick="parent.benimsayfam.location.href = 'http://www.turkmcsd.net'">Türk MCSD.NET</a>

   Anlaşıldı mı? Şimdi gerçekten frameler arası komünikasyona başlayalım. Bir frameden öbürüne bir kaç kelime yazalım. Tetikleyen de bir link olsun. Framesetin kodu şöyle:

   

<frameset rows="50%,50%">
<frame src="top.htm" name="top_frame">
<frame src="target.htm" name="target">
</frameset>

   Şimdi, target.htm yi yapınız fakat içi boş olsun, hatta <HTML> etiketleri bile olmasın.

   Gelelim top.htm ye. Herhangi bir linki tetikleyici olarak kullanıyorum. şöyle:

   

<a href="#" onClick="parent.target.document.writeln('Heeeeyyy!!!')">Acaba çalışacak mı?!</a>

Yukardaki satır uygulanmaya başladığı zaman, Javascript target adındaki frame'e ulaşır. Daha önceden dediğimiz gibi frame bir pencere gibi düşünüldüğü için, document özelliklerine sahiptir. Nerede document var ise orada writeln() metodu vardır ve oda frame'in içeriğinin üzerine yazar ve "Heeeeyyy!!!" çıkar.

Türk MCSD.NET © 2005
Siteyi en kaliteli Internet Explorer 5 ve üzeri versiyonlarinda 800 x 600 pixel çözünürlükte izlemenizi tavsiye ederiz.