在网页中,何时开始运行JavaScript?例如,
HTML section 1
Javascript section 1
Event handler routine 1
HTML section 2
Javascript section 2
Event handler routune 2
此运行顺序正确吗?
>网页加载完成
>图像文件加载完成
> Javascript第1部分开始并完成执行
> JavaScript第2节开始并完成执行
>事件处理程序例程从事件开始
在JavaScript第2部分完成之前,不会运行任何事件处理程序例程吗?
最佳答案
不,js是在定义的位置执行的-因此在以下示例中,您不能在之前定义的js脚本中使用第2部分html(id =’sec2′)中定义的div(您会看到错误).但是,如果您使用html-inline事件处理程序,则可以使用在html元素定义之后定义的js函数
<body>
<div id='sec1' onclick="show('sec1')">HTML section 1 (click me)</div>
<script>
console.log('Javascript section 1');
console.log('sec1 html:',sec1);
console.log('sec2 html:',sec2);
</script>
<div id='sec2' onclick="show('sec2')"> HTML section 2 (click me)</div>
<script>
console.log('Javascript section 2');
console.log('sec1 html:',sec2);
function show(msg) { alert(msg) };
</script>
</body>