jQuery $(document).ready()
Methode wird verwendet, um Code nach voll geladenem DOM auszuführen. Da sie die angegebene Funktion ausführt, wenn alle DOM -Elemente verfügbar sind, stellt sie sicher, dass versucht wird, die Elemente ordnungsgemäß zuzugreifen oder zu arbeiten.
Vor JQuery 3.0 ist die typische Verwendung der Verwendung anonymer Funktionen wie folgt:
$(document).ready(function() { // .ready() 的处理程序被调用。 });
document.ready
) veraltet sind. $(handler);
DOMContentLoaded
Methoden, die in modernen Browsern und IE9 verwendet werden können. Für ältere Versionen von IE kann das jQuery ready
-Ereignis verwendet werden. onreadystatechange
</body>
ready()
auf verschiedene Weise aufrufen: ready
$(document).ready(handler);
$().ready(handler);
$(handler);
nicht davon, es in einem Dokumentelement aufzurufen, und die Auslöserzeit der Rückruffunktion hat nichts mit dem Laden des angegebenen Elements zu tun. Stattdessen wird es aufgerufen, nachdem das gesamte DOM voll geladen ist. $("img")
veraltet. Der offizielle Grund ist: $(handler);
Dies liegt daran, dass die Wahl nichts mit dem Verhalten der-Methode zu tun hat, was ineffizient ist und zu falschen Annahmen über das Verhalten der Methode führen kann.
.ready()
ready
load
ready
load
Ereignisse können wie folgt verwendet werden:
load
Dies wartet nicht nur darauf, dass das DOM für die Interaktion bereit ist, sondern auch darauf, dass das Bild vollständig geladen wird (dies kann je nach Bildgröße einige Zeit dauern).
$(window).on("load", function(){ // 所有资源(包括图像)加载完毕时的处理程序 });
. Wenn Sie jedoch einen Lastspinner anzeigen möchten, bevor alle Ressourcen geladen werden, oder wenn Sie einige Berechnungen mit Bildgröße durchführen möchten, ist dies möglicherweise das Recht Auswahl .
Wenn Sie JavaScript -Code als letztes in Ereignisse anhören: (Referenz) des Dokuments und führt die Rückruffunktion sofort aus, wenn es abgeschlossen ist:
verwenden, um die -Event wie JQuery verwenden, da dies in jedem Browser funktioniert. Dies führt auch zu Zeitverzögerungen, da alle Ressourcen geladen werden. Beachten Sie, dass Sie auch -Methode suchen, können Sie das Ereignis -Funktion von JQuery sicher weiterhin verwenden. Denken Sie jedoch daran, (veraltete) und Sie können sicherstellen, dass das DOM geladen wird! Das obige ist der detaillierte Inhalt vonErsetzen Sie die Jquery -Dokumentfunktion mit JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!ready
stellt sicher, dass der Code nur ausgeführt wird, wenn alle DOM -Elemente sicher und umsetzbar sind. Aber was bedeutet das? Wenn Sie den JavaScript -Code im Teil des HTML -Dokuments <body>
ausführen, wird sichergestellt, dass der Code ausgeführt wird, nachdem der Browser auch alle nachfolgenden Elemente geladen wird (z. B. <code><p>
Elemente): $(document).ready(function() {
// .ready() 的处理程序被调用。
});
<body>
ausführen, müssen Sie ihn wahrscheinlich nicht in ready()
einwickeln
$(window).on("load", function(){
// 所有资源(包括图像)加载完毕时的处理程序
});
Alternativen
Für moderne Browser und IE9 können Sie ready()
DOMContentLoaded
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>.ready() 教程</title>
<🎜>
</head>
<body>
<🎜>
<p>我是这个网站的内容</p>
</body>
</html>
readyState
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>.ready() 教程</title>
</head>
<body>
<p>我是这个网站的内容</p>
<🎜>
<🎜>
</body>
</html>
Für IE -Versionen, die weniger als oder gleich 8 sind, können Sie das Ereignis onreadystatechange
: readyState
des Dokuments zu erkennen
document.addEventListener("DOMContentLoaded", function(){
// DOM 完全加载时的处理程序
});
load
wie oben erläutert überprüfen müssen, um sicherzustellen, dass die Rückruffunktion auch dann ausgeführt wird, auch wenn das Ereignis abgefeuert wurde. readyState
Wenn Sie nach einer reinen JavaScript -Alternative zur ready
verwenden. Wenn Ihre Systemanforderungen IE enthalten, müssen Sie möglicherweise DOMContentLoaded
Ereignisse oder onreadystatechange
Ereignisse verwenden. load
document.ready
-Methoden für Elemente zu vermeiden, wie bereits erwähnt (z. B. ready()
). $(document).ready()