文章标题

下午复习昨天做的东西 结果在处理鼠标事件时出现了问题

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style>
#div1 {width:250px; height:250px; background:#C00; border:2px solid:#000;
display:none;}
</style>
<script type="text/javascript">
function change1()
{
    var z=document.getElementById('div1').style;
    z.display='block';
}
function change2()
{
**var z=document.getElementById('div1').style.display
    z='none';**
}
</script>
</head>

<body>
<input type="checkbox" onmouseover="change1()" onmouseout="change2()"/>
<div id="div1">请注意随身行李安全</div>
</body>
</html>

在处理onmouseover事件时运行正常,但是当处理onmouseout时出现了错误,我觉得错误在于,

var z=document.getElementById('div1').style.display
    z='none';

这里是对z进行了重新赋值,也就是说’none‘取代了document.getElementById('div1').style.display

而不是将它的值重新设置为’none’,也就是说

z='nono';

使得

z=document.getElementById('div1').syle.display;

不再存在,被清除掉了,也就是说z在处理中无法指向

div1.style.display

所以才会出现这样的错误

-

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章