日期:2014-05-16  浏览次数:20374 次

这两段代码有什么不同???
function obj() {
document.fuhao.src="img/fuhaoshanghong.jpg";
document.getElementById('bei').style.color="#F00";
}
function chu() {
document.fuhao.src="img/fuhaoshang.jpg";
document.getElementById('bei').style.color="#00F";
}
上面那段代码和下面这段代码到底有什么差异?为什么我用上面的代码能够实现我想要的结果,而下面这段就不行呢??
  var obj = document.getElementsByName("fuhao");
  obj.onmouseover = function(){
  document.fuhao.src="img/fuhaoshanghong.jpg";
document.getElementById('bei').style.color="#F00";
  }
  obj.onmouseout = function(){
  document.fuhao.src="img/fuhaoshang.jpg";
document.getElementById('bei').style.color="#00F";
  }

------解决方案--------------------
var obj = document.getElementsByName("fuhao");
你这个查出是一个集合。。
你可以给它赴个id 再试试。。。
var obj = document.getElementById("fuhao");
 
------解决方案--------------------
var obj = document.getElementsByName("fuhao");
--》obj = document.getElementsById("fuhao");
举例:
<div name="fuhao" id="div_0"> </div>
<div name="fuhao" id="div_0"> </div>
<div name="fuhao" id="div_0"> </div>
document.getElementsByName("fuhao")的结果是3个div
document.getElementsById("fuhao");的结果是唯一div 
如果一定要用document.getElementsByName("fuhao");也可以 
把obj.onmouseover 改成 obj[0].onmouseover 

------解决方案--------------------
探讨

var obj = document.getElementsByName("fuhao");
你这个查出是一个集合。。
你可以给它赴个id 再试试。。。
var obj = document.getElementById("fuhao");

------解决方案--------------------
应该是var obj = document.getElementsByName("fuhao")[0]吧
getElementsByName本身返回的就是所有包含"fuhao"作为name的元素构成的数组啊
要不就像楼上一样用getElementsById吧,id才是独一无二的,会返回唯一的元素