根据 Yahoo Developer Network 等许多来源,javascript 位于页面底部,因此网页内容将在加载 javascript 之前显示。在 head 标签中调用 require.js 是否会使浏览器在显示页面之前等待脚本完成加载?
<head>
<title>My Sample Project</title>
<script data-main="scripts/main" src="scripts/require.js"></script>
</head>
根据 Yahoo Developer Network 等许多来源,javascript 位于页面底部,因此网页内容将在加载 javascript 之前显示。在 head 标签中调用 require.js 是否会使浏览器在显示页面之前等待脚本完成加载?
<head>
<title>My Sample Project</title>
<script data-main="scripts/main" src="scripts/require.js"></script>
</head>
答案有点复杂;它可以进入您的页面<head>
或<body>
页面,具体取决于您对require.js
. 某些操作在逻辑上需要在内容加载之前发生,但大多数事情都乐于等待。
在页面加载之前需要发生的事情的一个例子是css预处理器LESS
,这显然需要在<head>
(实际上这可能应该被预编译并用作静态css,但它是一个很好的例子) - 另一个例子是 JavaScript 模板系统或某种客户端 MVC 系统,如ember.js
对于基本的展示性 JavaScript,通常将其包含在页面底部是安全的。
答案是肯定的。对于 head 标签中的所有脚本,这都是一样的。脚本块并行下载,一旦完成执行,浏览器将继续呈现页面。
这取决于 javascript 文件的内容,何时执行。
例如
<script>
function load() {
alert("load event!");
}
window.onload = load;
</script>
页面加载后将显示消息框。