Merhaba arkadaşlar bu kısımda Javascript ile Katman(layer) özelliklerinin nasıl değiştirilebileceğini göreceğiz. Javascript bize html sayfamızı oluşturan önemli unsurlardan biri olan layer(katman) ların tüm özelliklerini değiştirmemize olanak sağlar. Ayrıca hemen her yerde gördüğünüz resim değiştirme tekniğini de bu işlemle yapılır.
Katman Özelliklerini Değiştirme
Katman sayfanın üzerinde ne sayfadan bağımsız ne de her yönüyle sayfaya bağlı bir unsurdur. Katman kullanarak istediğimiz herhangi bir yapıyı (yazı,resim,video,form) sayfamızın istediğimiz yerine koordinatları vermek koşulu ile yerleştirebiliriz. Zaten katmanın kullanım alanı en çok budur. Şimdi bir katman oluşturalım ve değiştirilebilir özelliklerini görelim.
Örnek 18:
<html>
<head><title>ornek18.html</title></head>
<body>
<div id="deneme" style="position:absolute ; left:100px ; top:200px;
width:300px ; height:400px ; visibility:visible" >
Su anda bir katman(layer)in icerisindeyim
</div>
</body>
</html>
Layer oluşturmak istediğinizde <div> deyimi ile başlar </div> deyimi ile kodunuz tamamlarsınız.
id : Katmanın ismi
style : Katmanın özelliklerini belirtmek için
absolute : Katmanın koordinatlarının kesin olacağını belirler
left : Katmanın soldan kaç piksel sonra başlayacağını belirler
top : Katmanın üstten kaç piksel sonra başlayacağını belirler
width : Katmanın kaç piksel genişliğinde olacağını belirler
height : Katmanın kaç piksel boyunda olacağını belirler
visibility : Katmanın görünür mü görünmez mi olacağını belirler
Şimdi de Javascript komutlarıyla bu özelliklerin nasıl değiştirildiğini görelim. Fakat burada karşımıza bir sorun çıkmaktadır. IE ve NN tarayıcılarının doküman nesne modelleri farklı olduğundan katmana ulaşma teknikleri de farklıdır.
Internet Explorer kod tekniği
katman_adı.style.değiştirilmesi_istenen_özellik=ye ni_değer;
Örnek :
deneme.style.left=50px;
Netscape Navigator kod tekniği
document.katman_adı.değiştirilmesi_istenen_özellik =yeni_değer;
Örnek :
document.deneme.left=50px;
Örnek 19: Bu örnek yukarıdaki iki örneği de içermektedir.
<html>
<head><title>ornek19.html</title>
<script language="javascript1.2">
<!--
function tara(){
var tarayici= navigator.appName
if (tarayici=="Netscape") degisim = document.katman;
if (tarayici=="Microsoft Internet Explorer") degisim = katman.style;
}//tara
function hareket1(){
degisim.left=100
degisim.top=100
}//hareket1
function hareket2(){
degisim.left=300
degisim.top=300
}//hareket2
-->
</script></head>
<body onLoad="tara()">
<div id="katman" style="position:absolute ; left:400px; top:10px">
Bu katmanin yeri degisecek
</div>
<p><p><p>
<a href="javascript:hareket1()">Burayı tıklayın ve katmanınız 100x100'e gitsin</a><br>
<a href="javascript:hareket2()">Burayı tıklayın ve katmanınız 300x300' gitsin</a>
</body></html>
Buradaki örnekte olduğu gibi sizde katmanın diğer özelliklerini (width,height)değiştirebilirsiniz. Fakat görünebilirlik özelliği için özel bir durum vardır. Katman özelliklerine erişimde olduğu gibi bu özellikte de Internet Explorer ve Netscape Navigator farklılıkları vardır.
Internet Expolorer için görünebilirlik özelliği Katmanı görünebilir kılmak için:
katman_adı.style.visibility="visible"
Katmanı gizleyebilmek için.
katman_adı.style.visibility="hidden"
Netscape Navigator için Görünebilirlik özelliği Katmanı görünebilir kılmak için:
document.katman_adı.visibility="show"
Katmanı gizleyebilmek için.
document.katman_adı.visibility="hide"
Örnek 20:
<html>
<head><title>ornek20.html</title>
<script language="javascript1.2">
<!--
function sakla(){
var tarayici= navigator.appName
if (tarayici=="Netscape")
document.katman.visibility="hide"
if (tarayici=="Microsoft Internet Explorer")
katman.style.visibility="hidden"
}//sakla
function goster(){
var tarayici= navigator.appName
if (tarayici=="Netscape")
document.katman.visibility="show"
if (tarayici=="Microsoft Internet Explorer")
katman.style.visibility="visible"
}//goster
-->
</script></head>
<body>
<div id="katman" style="position:absolute ; left:400px; top:10px">
Bu katmanin tikladiginizda yok olacak
</div><p><p><p>
<a href="javascript:sakla()">Burayi tiklayin ve katmaniniz yok olsun</a><br>
<a href="javascript:goster()">Burayi tiklayin ve katmaniniz geri gelsin</a>
</body></html>
Sizde bu tıklama özelliklerin değil de onMouseOver ve onMouseOut olay yönlendiricilerini kullanarak çok daha güzel şeyler üretebilirsiniz.