Javascript onLoad, onUnLoad

Javascript açısından Browser?ın bir HTML sayfasını görüntülemeyi bitirmesi sayfanın “load” (yükleme), başka bir sayfaya geçilmesi ise önceki sayfanın “unload” (yüklenmişlikten çıkması) sayılır; ve bu iki olayı onLoad ve onUnLoad yönlendiricileri

 ile karşılayabiliriz. HTML dosyasının iki bölüm (HEAD ve BODY) olduğunu biliyorsunuz. Browser açısından asıl sayfa, BODY bölümüdür; HEAD bölümündeki komutlar sayfanın nasıl görüntüleneceğine ilişkin komutlar içerir.

 

Bir sayfa Browser?a yüklenirken yapabileceğimiz bir çok işten birisi, ziyaretçinin Browser?ının türünü yoklamak olabilir. O halde, BODY etiketini şöyle yazarsak;

<BODY onLoad="hangiBrowser()"> 

ve HTML?in HEAD bölümüne bu fonksiyonu koyarsak, sayfamız yüklenirken bize ziyaretçinin Netcape mi, yoksa Internet Explorer mı kullandığını bildirebilir. Bu bilgiyi nasıl değerlendirebileceğimiz ise ayrı bir konu. “hangiBrowser()” fonksiyonu şöyle olabilir:

// hangiBrowser fonksiyonunu tanımlayalım: var Browser=navigator.appName + " " + navigator.appVersion; var getkey=Browser.substring(0, 12); function hangiBrowser() 	{ 	if (Browser.substring(0, 8)=="Netscape") 		window.location="netscape4.htm"; 	if (Browser.substring(0, 9)=="Microsoft") 		window.location="ie.htm"; 	if ( (Browser.substring(0, 8)!="Netscape") && (Browser.substring(0, 9)!="Microsoft") ) 		window.location="belirsiz.htm"; 	} // --> 

Bu iki kodu içeren sayfanızı onLoad.htm adıyla kaydeder ve aynı dizine, içinde “Netscape kullanıyorsunuz! yazılı ve adı “netscape.htm”; içinde “IE kullanıyorsunuz!” yazılı ve adı “ie.htm”, ve içinde “Ne tür Browser kullandığınızı anlamadık!” yazılı ve adı “belirsiz.htm” olan üç HTML dosyası koyarsanız, onLoad.htm?i açmak istediğinizde kullandığınız Browser hangisi ise (onLoad.htm?in değil) diğer üç dosyadan birinin açıldığını göreceksiniz. Bir sayfada başka bir sayfayı işaret eden bir bağlantıyı tıkladığınızda, Browser açık olan HTML kodunu silecek, yani sayfayı yüklenmemiş hale getirecektir. Bu Javascript açısından bir UnLoad olayıdır. O halde, BODY etiketimize onUnLoad yönlendiricisini harekete geçiren bir fonksiyonu çağırmasını söyleyebiliriz.

Aşağıdaki HTML konudu onUnLoad.htm, ve bir HTML sayfasına da sadece “Güle Güle.. Yine Bekleriz!” yazarak, gulegule.htm adıyla kaydederseniz sayfanız kapanırken ziyaretçinize veda etme imkanınız olur. (Ama çoğu ziyaretçinin bundan hoşlanmayacağına emin olabilirsiniz!)

<HTML> <HEAD> <meta http-equiv="Content-Type" content="text/html; charset=windows-1254"> <TITLE>JavaScript'te onUnLoad</TITLE> <SCRIPT LANGUAGE="JavaScript1.2"> <!-- Javascript kodunu eski sürüm Browserlardan saklayalim // gulegule fonksiyonunu tanimlayalim: function gulegule() 	{ 	gulegulePencere = window.open("gulegule.htm",  	                              "GuleGule",  	                              "toolbar=0, width=200, heigth=400,resizeable=0"); 	}// --> </script> </head> <body onUnLoad="gulegule()"> Bu sayfa size güle güle diyecek!! <A HREF="test1.htm">Baska sayfa</A> </body> </html> 

Buradaki BODY etiketi, Browser başka sayfaya geçmek üzere mevcut sayfayı sildiği anda, Browser?a yeni bir pencere açarak, bu pencerede gulegule.htm?i görüntülemesini sağlayacaktır.

Bana Ders Anlat © 2008-2022