为什么头部选择中的javascript代码不能获得元素?

Pro*_*ogo 2 javascript

我已经在javascript中使用pi计算器很长一段时间了,我终于完成了.问题是我在头部的脚本:

document.getElementById("button").addEventListener('click', (function(){
    alert('Beginning…');
}), false);
Run Code Online (Sandbox Code Playgroud)

我在我的身体部分有这个:

<input type="button" id="button" value="Calculate!!"/>
Run Code Online (Sandbox Code Playgroud)

但是当我打开网页时,我收到以下错误:"null不是对象,评估document.getElementById("button").addEventListener"

有谁知道为什么我的代码无法正常运行?

谢谢.

Cil*_*lan 6

将它包装在窗口 onload事件上:

window.onload = function()
{
    document.getElementById("button").addEventListener('click', (function(){
        alert('Beginning…');
    }), false);
};
Run Code Online (Sandbox Code Playgroud)

要么

window.addEventListener('load', function()
{
    document.getElementById("button").addEventListener('click', (function(){
        alert('Beginning…');
    }), false);
});
Run Code Online (Sandbox Code Playgroud)

或者,如果您的脚本不必在头部,请将其放在具有id 按钮的元素之后.

DEMO