快乐购
2016-09-06 23:39
<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);//这里login_btn怎么解释?并没有出现过啊
//点击关闭按钮隐藏登录层
// 执行代码
addEvent(close,'click',hideLogin);}
</script>
</head>
<body>
<div>亲,您好!<input type="button" value="登 录" id="login"></div>
<div id="login_box">
<p>用户登录</p><span id="close">X</span>
</div>
</body>
</html>
var login_btn=document.getElementById('login'), 一开始已经定义了
点击按钮出现那个登录框呀,所以btn就是触发事件的元素呀。兼容的话,是在那段 封装添加事件监听程序那段做的
看清楚题目要求,点击登录的时候将<div id="login_box">的样式改为display="block";显示出来
attachEvent这个添加事件的方法IE11已经不支持
DOM事件探秘
99544 学习 · 1197 问题
相似问题