Widziałem to pytanie w stackoverflow, ale nie czuję, że w ogóle zostało udzielone.
Jest $(document).ready
konieczne?
Łączę wszystkie moje skrypty javascriptu na dole strony, więc teoretycznie wszystkie one działają, gdy dokument jest gotowy.
Widziałem to pytanie w stackoverflow, ale nie czuję, że w ogóle zostało udzielone.
Jest $(document).ready
konieczne?
Łączę wszystkie moje skrypty javascriptu na dole strony, więc teoretycznie wszystkie one działają, gdy dokument jest gotowy.
Odpowiedzi:
Jest
$(document).ready
konieczne?
jeśli umieściłeś wszystkie swoje skrypty tuż przed </body>
tagiem zamykającym, zrobiłeś dokładnie to samo.
Dodatkowo, jeśli skrypt nie potrzebuje dostępu do DOM, nie ma znaczenia, gdzie zostanie załadowany, poza możliwymi zależnościami od innych skryptów.
W przypadku wielu systemów CMS nie masz dużego wyboru miejsca ładowania skryptów, więc jest to dobra forma dla modularnego kodu do wykorzystania document.ready
zdarzenia. Czy na pewno chcesz wrócić i debugować stary kod, jeśli użyjesz go ponownie w innym miejscu?
Na marginesie: powinieneś używać jQuery(function($){...});
zamiast, $(document).ready(function(){...});
ponieważ wymusza to na aliasie $
.
document.ready
nie jest tym samym, co onload
zdarzenie, w którym zakończyło się ładowanie obrazów i innych zasobów zewnętrznych.
noConflict()
z jakiegoś powodu trzeba go użyć.
Nie, jeśli twój javascript jest ostatnią rzeczą przed zamknięciem, nie musisz dodawać tych tagów.
Na marginesie, skrót $ (document) .ready to poniższy kod.
$(function() {
// do something on document ready
});
To pytanie może być dobre. Przeczytałeś to? jQuery: Po co używać document.ready, jeśli zewnętrzny JS na dole strony?
$(document).ready()
”.
Nie, nie jest to konieczne, pod warunkiem, że wiesz, że nie dzieją się żadne odroczone rzeczy - iw większości przypadków będziesz wiedział, czy rozwinąłeś to, nad czym pracujesz, od góry do dołu.
- Kiedy wprowadzasz kod kogoś innego, bez dokładnego sprawdzania go, nie wiesz.
Więc zadaj sobie pytanie, czy używasz frameworka lub edytora, który pomaga ci w tworzeniu struktury? Czy wprowadzasz kod innej osoby i nie zadałeś sobie trudu, aby przeczytać każdy plik? Czy chcesz przejść przez macierz systemu operacyjnego, przeglądarki i wersji przeglądarki w celu przetestowania kodu? Czy musisz wycisnąć z kodu każdą uncję szybkości?
document.ready () sprawia, że wiele z tych pytań staje się nieistotnych. document.ready () został zaprojektowany, aby ułatwić Ci życie. Pojawia się przy niewielkim (i śmiem powiedzieć akceptowalnym) uderzeniu wydajnościowym.
Widziałem odniesienia / posty na blogu w Internecie dotyczące korzystania z jquery document.ready
. Moim zdaniem zarówno używanie go, jak i umieszczanie całego javascript na dole strony są ważne. A teraz pytanie, które byłoby lepsze? To tylko kwestia stylu programowania.
Nie, nie jest to konieczne. Możesz umieścić tag script tuż przed tagiem zamykającym body lub, jeśli obsługujesz IE9 +, możesz użyć natywnego JS.
<script>alert('DOM Loaded!');</script>
</body>
<script>
document.addEventListener("DOMContentLoaded", function(event) {
// DOM has loaded ready to fire JS scripts
});
</script>