dem folgenden Code vor:DOM Laden aus danach Skript blockiert
<head>
<style>
.box{
background-color:red;
height:150px;
width:150px;
}
</style>
</head>
<body>
<div class="box"></div>
<script>
var start = new Date();
while(true) {
var now = new Date();
if (now-start > 10000)
break;
}
console.log('main thread finished');
</script>
</body>
Es ist eine große mir Überraschung, dass DOM seine Beladung für 10 Sekunden aufschiebt (.box Rechteck wird nach 10 Sekunden erscheint!) . Da es zuerst (<div class="box"></div>)
kommt, warum wartet auf das Skript, das folgt? Irgendeine vernünftige Erklärung?
Danke
Entschuldigung @Rayon; Nach den Änderungen ist jedoch nicht ersichtlich, dass das Skript nach DOM kommt! In diesem Fall hat meine Frage keine Bedeutung ... –
Wenn Sie dieses Snippet ausführen, sehen Sie die gleichen Ergebnisse. Die Platzierung des Skripts spielt in diesem Fall keine Rolle. – Rayon
macht es keinen Unterschied, ob Sie in Körper oder Kopf setzen. Die Ausführung hält trotzdem an. –