在HTML文档对象DOM有个添加某个元素事件监听EventListener对象里的addEventListener() 方法,执行这个方法是有一定的讲究的,即方法的执行与元素的加载时序是有一定的先后的,正常情况是先加载元素,然后再执行调用
如下图的前端代码是错误的,单击按钮装不起作用
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>练习addEventListener调用</title>
<script>
document.getElementById("btn").addEventListener("click", EventListener);
function EventListener() {
window.alert("调用成功");
}
</script>
</head>
<body>
<input id="btn" type="button" value="button" />
</body>
</html>
如果改为下面的代码,即JS代码置于元素后,则可以成功能执行
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>练习addEventListener调用</title>
</head>
<body>
<input id="btn" type="button" value="button" />
<script>
document.getElementById("btn").addEventListener("click", EventListener);
function EventListener() {
window.alert("调用成功");
}
</script>
</body>
</html>
综上所述,HTML事件的执行是跟文档元素的顺序是有一定的关系的