2016-04-07 18 views
0

Bir komut dosyası yürütmek istediğimde myFunction() {} bir sayfa yüklendiğinde iki seçeneğim var.html satır içi olay işleyicisi ile dikkat çekmeyen olay işleyicisi arasındaki parantezin farklı kullanımı

1 <body onload="myFunction()"> 
2 <script> window.onload = myFunction </script> 

Sorum şu: İlk durumda parantezlere ihtiyacımız var, ancak ikinci durumda değil mi? Arkasındaki teori nedir?

+0

Birinde siz onu (parens ile) çağırıyorsunuz, diğerinde de (parens olmadan) bir referans oluşturuyorsunuz, örneğin, http://stackoverflow.com/a/7969111/438992 –

+0

tarayıcı, sizin için 'yük 'özelliğine atadığınız her işlevi ateşliyor. (Hooking) – Antiga

+1

@HaNdTriX \t Fonksiyonun yükte çalışmasını istiyorsanız bunu yapın. –

cevap

0

Öznitelik sürümü, Javascript'in ilk günlerine kadar uzanır ve değerlendirmek için bir komut dosyası parçasını belirtmek yerine bir işlevin başvurma kavramını desteklemek için yeterince gelişmiş değildir. Günümüzde kullanımı, modern Javascript tekniklerini savunan kişiler tarafından çatılır.

+0

Bu bir çoklu SO dupe olduğundan, aynı cevapları göndermek yerine bunları bulup işaret edelim. –

0
<body onload="myFunction()"> 

bir işlev çağrısıdır: sayfa yüklendiğinde, işlev çağrılır. ( ). Sadece satır içi javascript, HTML ve javascript karışımı ile, rahatsız edici yazı yazılabilir ve yönetilebilir iken, rahatsız edici olduğu için, daha iyi bir çözümdür.

+0

Bu bir çoklu SO dupe olduğundan, aynı cevapları göndermek yerine bunları bulup işaret edelim. –

İlgili konular