Heim > Artikel > Web-Frontend > Detaillierte Erklärung von $(function() {}); in jQuery_jquery
Der Code in $(document).ready() wird ausgeführt, nachdem der Seiteninhalt geladen wurde. Wenn der Code direkt in das Skript-Tag geschrieben wird, wird der Code im Skript-Tag ausgeführt, wenn die Seite geladen wird Wenn der in Ihrem Tag ausgeführte Code dieses Mal Code oder DOM aufruft, der noch nicht geladen wurde, wird natürlich ein Fehler gemeldet, wenn Sie das Skript-Tag am Ende der Seite einfügen Der Effekt ist der gleiche wie bei „Bereit“.
$(document).ready(function(){}) kann als $(function(){});
abgekürzt werdenNachdem Sie auf den Absatz geklickt haben, wird dieser Absatz ausgeblendet:
<html> <head> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function(){ $("p").click(function(){ $(this).hide(); }); }); </script> </head> <body> <p>If you click on me, I will disappear.</p> </body> </html>
Wenn $(document).ready(function() {}); entfernt wird, kann der Absatz nicht ausgeblendet werden:
<html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $("p").click(function(){ $(this).hide(); }); </script> </head> <body> <p>If you click on me, I will disappear.</p> </body> </html>
Aber wenn Sie das Skript am Ende der Seite platzieren, kann der versteckte Effekt wiederhergestellt werden:
<html> <head> </head> <body> <p>If you click on me, I will disappear.</p> </body> <script type="text/javascript" src="jquery-1.7.2.min.js"></script> <script type="text/javascript"> $("p").click(function(){ $(this).hide(); }); </script> </html>
Zusammenfassung:
Der Code in $(document).ready wird ausgeführt, nachdem der Seiteninhalt geladen wurde. Wenn die Seite geladen ist, führt das Skript-Tag den darin enthaltenen Code aus Code ruft Code oder DOM auf, der noch nicht geladen wurde, ein Fehler wird gemeldet,
Wenn Sie das Skript-Tag am Ende der Seite einfügen, ist das natürlich kein Problem und der Effekt ähnelt dem von „ready“