为了账号安全,请及时绑定邮箱和手机立即绑定

点击关闭没有效果

我一开始以为是span标签不能添加click事件 换成input也不行

<!doctype html><html lang="en"><head>
   <meta charset="UTF-8">
<title>Document</title>
<style>
*{margin:0;padding:0;}
    .head{font-size:12px;padding:6px 0 0 10px;}
    #login_box{width:300px;height:150px;background:#eee;     border:1px solid #ccc;position:absolute;left:50%;top:50%;margin-left:-150px;margin-top:-75px;}
    #login_box p{height:20px;border-bottom:1px solid #ccc;font-size:12px;padding:6px 0 0 5px;font-weight:bold;}
    #close{width:14px;height:14px;background:url(close.png) no-repeat;position:absolute;right:4px;top:6px;}
</style>
<script>
    window.onload = function () {
        var login_btn = document.getElementById('login'),
          login_box = document.getElementById('login_box'),
          close = document.getElementById('close');
        // 封装添加事件监听程序
        function addEvent(ele, type, hander) {
            // 执行代码
            if (ele.addEventListener) {
                ele.addEventListener(type, hander, false);
            }
            else if (ele.attachEvent) {
                ele.attachEvent('on' + type, hander);
            }
            else{
                ele['on'+type]=hander;
            }
        }
        // 显示登录层函数
        function showLogin() {
            // 执行代码

            login_box.style.display = 'block';
        }
        // 隐藏登录层函数
        function hideLogin() {
            // 执行代码
            login_box.style.display ='none';
        }
       
        //点击登录按钮显示登录层
        // 执行代码
        addEvent(login_btn, 'click', showLogin);
        hideLogin(close, 'click', hideLogin);
        //点击关闭按钮隐藏登录层
        // 执行代码
    }
</script></head><body>
<div class="head">亲,您好!<input type="button" value="登 录" id="login"></div>
<div id="login_box">
<p>用户登录</p><input type="button" value="x" id="close">
</div></body></html>

正在回答

3 回答

  hideLogin(close, 'click', hideLogin);这段代码错误 应该改成  addEvent(close, 'click', hideLogin);

另外你的  #login_box样式应该开始就要把他隐藏 使用display:none

1 回复 有任何疑惑可以回复我~

代码没错,鉴定完毕

0 回复 有任何疑惑可以回复我~

addEvent(login_btn, 'click', showLogin);
        hideLogin(close, 'click', hideLogin);这两个要在window加载里面调用才行,不然,页面先执行这里,运行到内存中,发现addEvent()函数还没有定义,自然没有效果,加载不上

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

点击关闭没有效果

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信