<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<script>
var obtn = document.getElementById('btn1');
function an ()
{
alert('a');
}
obtn.onclick=an;
</script>
<body>
<input id="btn1" type="button" value="按钮"/>
</body>
</html>这个提取行间事件为什么实现不了

解决方案 »

  1.   

    <body>
    <input id="btn1" type="button" value="按钮"/>
    <script>
        var obtn = document.getElementById('btn1');
        function an ()
        {
        alert('a');
        }
        obtn.onclick=an;
        </script>
    </body>
      

  2.   

    script使用btn的时候button还在不存,把js放在dom下面执行,或者用window.onload = function(){//js代码}等待dom加载完毕执行js
      

  3.   

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title></title>
    </head><body>
    <input id="btn1" type="button" value="按钮"/>
    </body>
    </html><script>
    var obtn = document.getElementById('btn1');
    function an()
    {
    alert('a');
    }
    obtn.onclick=an;
    </script>
      

  4.   

    你放在前面  页面按钮都没初始化加载完成,你就用 就报错了
    放到html最后面,页面加载完成了,使用就可以了