javascript - DOM事件,看看代码错在哪里(Uncaught SyntaxError: Unexpected identifier)

查看:125
本文介绍了javascript - DOM事件,看看代码错在哪里(Uncaught SyntaxError: Unexpected identifier)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

一个简单的按钮弹出程序,代码检查了好几遍,就是找不错在哪里啊
运行不了,显示new1.html:38 Uncaught SyntaxError: Unexpected identifier

大神帮忙检查下代码,指点一下。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
    <title>0421_DOM0级与DOM2级处理事件</title>
    <script type="text/javascript">
        function showM(){
            alert("Hello world!");
        }
        
        //DOM0级处理事件
        var btn2=document.getElementById("btn2");
        var btn3=document.getElementById("btn3");
        btn2.onclick=function(){
        alert('时间2号');};
        btn2.onclick=null;

        //DOM2级处理事件
        //btn3.addEventListener('click',showM,false);
        //btn3.attachEvent('onclick',showM);
        
        //解决浏览器兼容性问题
        var eventUtil={
            //添加句柄
            addHandler:function(element, type, handler){
                if(element.addEventListener){
                    element.addEventListener(type,handler,false);
                    //DOM2级处理事件兼容chrome和火狐
                }else if(element.attachEvent){
                    element.attachEvent('on'+type,handler);        
                    //DOM2级处理事件兼容IE8以及更早的浏览器版本,只支持事件冒泡        
                }else{
                    element['on'+type]=handler;
                    //DOM0级处理事件element.onclick等价于element['onclick']
                }
            }
            //删除句柄
            removeHandler:function(element,type,handler){
               if(element.removeEventListener){
                 element.removeEventListener(type,handler,false);
               }else if(element.detachEvent){
                 element.detachEvent('on'+type,handler);
               }else{
                 element['on'+type]=null;
               }
             },
        }
        eventUtil.addHandler(btn3,'click',showM);        
    
    </script>
    
</head>
<body>
<input type="button" value="按钮一" id="btn1" onclick="showM()">

<input type="button" value="按钮二" id="btn2">

<input type="button" value="按钮三" id="btn3">

</body>
</html>

解决方案

把你的的script放在body的尾部。

你的script执行时body里的dom都还没渲染,所以getElementById什么都找不到。

这篇关于javascript - DOM事件,看看代码错在哪里(Uncaught SyntaxError: Unexpected identifier)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆