为什么getElementsByTagName获取DIV的个数并循环事件没有效果

<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/... <!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=gb2312" />
<title>无标题文档</title>
</head>
<script type="text/javascript">
window.onload=function(){
var divs=document.getElementsByTagName('div');
for(var i=0;i<divs.length;i++){
divs[i].onMousedown=function(){
divs[i].style.border="1px solid #ff0000";
}
}
}
</script>
<style type="text/css">
.dd,.cc{width:200px; height:200px; background:#CC99FF;}
.cc{margin-left:400px;}
</style>
<body>
<div class="dd"></div>
<div class="cc"></div>
</body>
</html>
展开
 我来答
百度网友502468cb9
2011-04-14
知道答主
回答量:34
采纳率:0%
帮助的人:23.9万
展开全部
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<script type="text/javascript">
window.onload=function(){
var divs=document.getElementsByTagName('div');
for(var i=0;i<divs.length;i++){
divs[i].onmousedown=function(){
this.style.border="1px solid #ff0000";
}
}
}
</script>
<style type="text/css">
.dd,.cc{width:200px; height:200px; background:#CC99FF;}
.cc{margin-left:400px;}
</style>
<body>
<div class="dd"></div>
<div class="cc"></div>
</body>
</html>

1. 事件onMousedown改成小写 onmousedown
2. 事件内部的匿名函数中的 divs[i]改为this 就可以了 。
犀利的小四眼
2011-04-14 · TA获得超过418个赞
知道小有建树答主
回答量:146
采纳率:0%
帮助的人:118万
展开全部
<!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=gb2312" />
<title>无标题文档</title>
</head>
<script type="text/javascript">
window.onload=function(){
var divs=document.getElementsByTagName('div');
for(var i=0;i<divs.length;i++){
divs[i].onMousedown=function(){
this.style.border="1px solid #ff0000";//要把指针指向当前的对象.
}
}
}
</script>
<style type="text/css">
.dd,.cc{width:200px; height:200px; background:#CC99FF;}
.cc{margin-left:400px;}
</style>
<body>
<div class="dd"></div>
<div class="cc"></div>
</body>
</html>

把divs[i]改成this..看上面的注释. divs[i]这个作用域只在for里面,并不在function内.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式