JavaScriptle çok içli dışlı olduğumuz zaman başımıza birçok dert açılıyor... En sonuncusunu bir süre önce yaşamıştım. Sayfa yüklendiğinde farklı fonksiyonları çalıştırmam gerekiyor kimi zamanlar.
Eğer daha önce .onLoad eventini kullanarak çalıştırılan bir fonksiyon varsa, bundan sonra bir fonksiyon daha çalıştırmak için aynı eventi kullandığınızda önceki fonksiyon arada kaynıyor gidiyor.
Bu sorunu ortadan kaldıran bir fonksiyonumuz var artık
Fonksiyon eventı kontrol ediyor... Eğer daha önce belirlenmiş bir işlem varsa onu değişkene kaydediyor. Daha sonra işlemide çağıracak bir fonksiyon olarak çıkartıyor
Artık .onLoad larımız çok sayıda elemente sahip...
Kullanımı
Güle güle kullanın
window.onLoad() : 3 Yorum
Şöyle da bir şey olmaz mı?
—-
function tumFonksyonlar()
{
selim();
natu();
baskasi();
}
body onload=”tumFonksyonlar();”
Olabilir, ama bunu tüm sayfalarda yapmak zorundasın… onLoad her zaman body tagında kullanılmayabilir…
window.onLoad = Fonksiyon;
ÅŸeklinde tanımlarsın eventı… Her sayfada aynı durum olmayabilir… Bu yüzden böyle bir fonksiyon var yani
Merhaba Selim bey,
Bir konuda yardımınızı rica edeceğim,
Kullandığım scriptin yeni versiyonunda bazı sayfalarda;
$onload = ‘onload=”dropdown(1,locations);”‘;
$loc_init = ‘ON’;
kullanılıyor. Bende tüm sayfalarda kullanılmak üzere sol kolon içerisine bir dosyası çağıran çağıran bir modül yapmıştım.
query ( $sql );
if ($db->numrows($r_featured_iframe) > 0)
{
?>
var page = “/featured-iframe-main.php”; // Çagirilacak sayfayi bu bölümde belirtiyoruz.
function ajax(url,target)
{
// native XMLHttpRequest object
document.getElementById(target).innerHTML=’Yükleniyor..’;
if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
req.onreadystatechange = function() {ajaxDone(target);};
req.open(”GET”, url, true);
req.send(null);
// IE/Windows ActiveX version
} else if (window.ActiveXObject) {
req = new ActiveXObject(”Microsoft.XMLHTTP”);
if (req) {
req.onreadystatechange = function() {ajaxDone(target);};
req.open(”GET”, url, true);
req.send();
}
}
setTimeout(”ajax(page,’scriptoutput’)”, 10000);
}function ajaxDone(target) {
// only if req is “loaded”
if (req.readyState == 4) {
// only if “OK”
if (req.status == 200 || req.status == 304) {
results = req.responseText;
document.getElementById(target).innerHTML = results;
} else {
document.getElementById(target).innerHTML=”ajax error:\n” +
req.statusText;
}
}
}
Bu nodül içerisindeki :
kodu çakışma yaptığı için yukarıda belirttiğim kod kullanılan sayfalarda modül çalışmamaktadır. Bunu nasıl çözerim? Teşekkürler..
Yorum Yaz