Geleneksel olarak, sayfa yüklendikten sonra bir JavaScript işlevini çağırmak için, gövdeye biraz JavaScript içeren (genellikle yalnızca bir işlev çağıran) bir onload
niteliği eklersiniz
<body onload="foo()">
Sayfa yüklendiğinde, sayfanın bazı bölümlerini sunucudan gelen verilerle dinamik olarak doldurmak için bazı JavaScript kodları çalıştırmak istiyorum. Bir nitelik ekleyebileceğim body
öğesi olmayan JSP parçaları kullandığım için onload
niteliğini kullanamıyorum.
Yükleme sırasında bir JavaScript işlevini çağırmanın başka bir yolu var mı? Çok aşina olmadığım için jQuery kullanmamayı tercih ederim.
Eğer onload metodunun parametre almasını istiyorsanız, buna benzer bir şey yapabilirsiniz:
window.onload = function() {
yourFunction(param1, param2);
};
Bu, onload'u anonim bir işleve bağlar; bu işlev çağrıldığında, verdiğiniz parametrelerle istediğiniz işlevi çalıştırır. Ve tabii ki, anonim fonksiyonun içinden birden fazla fonksiyon çalıştırabilirsiniz.
Orijinal sorunuz net değildi, Kevin'in düzenlemesinin/yorumunun doğru olduğunu varsayarsak, bu ilk seçenek geçerli değildir
Tipik seçenekler onload
olayını kullanmaktır:
<body onload="javascript:SomeFunction()">
....
Javascript'inizi gövdenin en sonuna da yerleştirebilirsiniz; doküman tamamlanana kadar çalışmaya başlamayacaktır.
<body>
...
<script type="text/javascript">
SomeFunction();
</script>
</body>
Bir başka seçenek de, bunu kendiliğinden yapan bir JS çerçevesi kullanmayı düşünmektir:
// jQuery
$(document).ready( function () {
SomeFunction();
});
function yourfunction() { /* do stuff on page load */ }
window.onload = yourfunction;
Ya da isterseniz jQuery ile:
$(function(){
yourfunction();
});
Sayfa yüklenirken birden fazla fonksiyon çağırmak istiyorsanız, daha fazla bilgi için bu makaleye göz atın: