At the core, this is a javascript question but I’m interfacing the event with jQuery.
Here’s an example case:
<html>
<head>
<script src="waiting_on_ready.js" />
</head>
<body>
<script src="http://somewhere.com/not_cached.js"></script>
</body>
</html>
Does the $.ready callback in waiting_on_ready.js have to wait for not_cached.js to be loaded? Does it wait for not_cached.js to be executed?
Yes and yes.
The execution of
<script>elements is synchronous except when using the HTML5 “async” attribute. The synchronous execution of JavaScript is required (unless otherwise requested not to be) because the JavaScript can modify the document stream throughdocument.write, etc. (However, the actual fetching of resources may be in parallel.)Happy coding.