<script src="mmm.js"></script>
<style>
#box{
width:150px;
height:150px;
background-color:red;
}
</style>
</head>
<body>
<div id="box"></div>
</body>
und die mmm.js DateiDom Parsing und Ausführung von JavaScript
$('#box').css("background-color","black");
Warum der obige Code funktioniert? Der folgende Code funktioniert nicht:
<script>
$('#box').css("background-color","black");
</script>
<div id="box"></div>
und das ist rational, da box
ist nicht auf das Skript bekannt. Wie ist box
dem externen Skript bekannt, da es über body
platziert ist und ausgeführt wird, bevor <div id="box"></div>
geparst wird?
Ich denke, die Seite wird vollständig geladen, bevor die externe js. Nicht der Fall in Ihrer zweiten Situation. – Mihai
"Warum funktioniert der obige Code?" - Es ... nicht. Hier ist [eine Live-Demo] (http://test-cases.dorward.me.uk/stackoverflow/36861279/) (Ich habe jQuery hinzugefügt, die Sie vergessen haben, in Ihren Testfall aufzunehmen), wenn der Code das Quadrat funktioniert hätte sei schwarz nicht rot. – Quentin
Wenn das der komplette Inhalt von 'mmm.js' ist, dann funktioniert es nicht. Ich vermute, Sie haben uns nicht alle Fakten gegeben, und in dieser Datei befindet sich ein Handler für das Dokument bereit. – Archer