变量需要先声明才能使用吗? portName 不存在没有一个叫portName string的 id 的images把你的protname alert 出来看看有咩有问题 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 js不需要声明变量,不声明会当全局变量来用,但Array那些就得声明类型。你的代码都不完整,slot_Num、slot_PortState估计是这些代码之间有错而使获取不了正确的名称吧。 那没有 id叫 port10101 的图片呢 我完整的代码是这样的:function initNpc_UMHF_GEI_X_4EF(slot_Num,card_Type){ var portNum=4; for(var i=0;i<portNum;i++) { var portName=""; var portName1=""; portName="port"+(10000+(100*(slot_Num+1))+(i+1)); alert(portName); switch (slot_PortState[slot_Num+1][i]) { case 0: window.document.images[portName].src=image_fiber[0].src; break; case 1: window.document.images[portName].src=image_fiber[1].src; break; case 2: window.document.images[portName].src=image_fiber[2].src; break; default: window.alert("Error:cardType "+card_Type+",slot "+(slot_Num+1)+",port "+(i+1)+"!"); break; } }}这是别人的源代码,没问题:function initNpc_GEI_24EC(slot_Num,card_Type){ var portNum=24; for(var i=0;i<(portNum-4);i++) { var portName=""; portName="port"+(10000+(100*(slot_Num+1))+(i+1)); if((i%2)==0) { switch (slot_PortState[slot_Num+1][i]) { case 0: window.document.images[portName].src=image_copper[3].src; break; case 1: window.document.images[portName].src=image_copper[4].src; break; case 2: window.document.images[portName].src=image_copper[5].src; break; default: window.alert("Error:cardType "+card_Type+",slot "+(slot_Num+1)+",port "+(i+1)+"!"); break; } } else { switch (slot_PortState[slot_Num+1][i]) { case 0: window.document.images[portName].src=image_copper[0].src; break; case 1: window.document.images[portName].src=image_copper[1].src; break; case 2: window.document.images[portName].src=image_copper[2].src; break; default: window.alert("Error:cardType "+card_Type+",slot "+(slot_Num+1)+",port "+(i+1)+"!"); break; } } } for(var i=(portNum-4);i<portNum;i++) { var portName=""; var portName1=""; portName="port"+(10000+(100*(slot_Num+1))+(i+1)); portName1="port"+(20000+(100*(slot_Num+1))+(i+1)); if((i%2)==0) { switch (slot_PortState[slot_Num+1][i]) { case 0: window.document.images[portName].src=image_copper[3].src; window.document.images[portName1].src=image_fiber[0].src; break; case 1: window.document.images[portName].src=image_copper[4].src; window.document.images[portName1].src=image_fiber[0].src; break; case 2: window.document.images[portName].src=image_copper[5].src; window.document.images[portName1].src=image_fiber[0].src; break; case 3: window.document.images[portName].src=image_copper[3].src; window.document.images[portName1].src=image_fiber[1].src; break; case 4: window.document.images[portName].src=image_copper[3].src; window.document.images[portName1].src=image_fiber[2].src; break; default: window.alert("Error:cardType "+card_Type+",slot "+(slot_Num+1)+",port "+(i+1)+"!"); break; } } else { switch (slot_PortState[slot_Num+1][i]) { case 0: window.document.images[portName].src=image_copper[0].src; window.document.images[portName1].src=image_fiber[0].src; break; case 1: window.document.images[portName].src=image_copper[1].src; window.document.images[portName1].src=image_fiber[0].src; break; case 2: window.document.images[portName].src=image_copper[2].src; window.document.images[portName1].src=image_fiber[0].src; break; case 3: window.document.images[portName].src=image_copper[0].src; window.document.images[portName1].src=image_fiber[1].src; break; case 4: window.document.images[portName].src=image_copper[0].src; window.document.images[portName1].src=image_fiber[2].src; break; default: window.alert("Error:cardType "+card_Type+",slot "+(slot_Num+1)+",port "+(i+1)+"!"); break; } } }} firefox + firebug 看看在哪错 'window.document.images[...]'为空或不是对象都已经提示了,就是window.document.images[...]不存在,所以不能再“.src” 请教:【jquery局部刷新问题】 js如何判断手机浏览器的页面是否加载完成啊? 急 在线等待!js问题 又一时间问题 下拉菜单问题 求一段代码码(分不够再加) javascript 简单问题求解!!! JS弹出简单问题 再次请教一个浮动层的问题? 一个日期的问题? js得到本周和下周的日期(在線等) 页面对不整齐,表格和层混排,高分辨率下变形!!!在线等!!!
{
var portNum=4;
for(var i=0;i<portNum;i++)
{
var portName="";
var portName1="";
portName="port"+(10000+(100*(slot_Num+1))+(i+1));
alert(portName);
switch (slot_PortState[slot_Num+1][i])
{
case 0:
window.document.images[portName].src=image_fiber[0].src;
break;
case 1:
window.document.images[portName].src=image_fiber[1].src;
break;
case 2:
window.document.images[portName].src=image_fiber[2].src;
break;
default:
window.alert("Error:cardType "+card_Type+",slot "+(slot_Num+1)+",port "+(i+1)+"!");
break;
}
}
}
这是别人的源代码,没问题:function initNpc_GEI_24EC(slot_Num,card_Type)
{
var portNum=24;
for(var i=0;i<(portNum-4);i++)
{
var portName="";
portName="port"+(10000+(100*(slot_Num+1))+(i+1)); if((i%2)==0)
{
switch (slot_PortState[slot_Num+1][i])
{
case 0:
window.document.images[portName].src=image_copper[3].src;
break;
case 1:
window.document.images[portName].src=image_copper[4].src;
break;
case 2:
window.document.images[portName].src=image_copper[5].src;
break;
default:
window.alert("Error:cardType "+card_Type+",slot "+(slot_Num+1)+",port "+(i+1)+"!");
break;
}
}
else
{
switch (slot_PortState[slot_Num+1][i])
{
case 0:
window.document.images[portName].src=image_copper[0].src;
break;
case 1:
window.document.images[portName].src=image_copper[1].src;
break;
case 2:
window.document.images[portName].src=image_copper[2].src;
break;
default:
window.alert("Error:cardType "+card_Type+",slot "+(slot_Num+1)+",port "+(i+1)+"!");
break;
}
}
} for(var i=(portNum-4);i<portNum;i++)
{
var portName="";
var portName1="";
portName="port"+(10000+(100*(slot_Num+1))+(i+1));
portName1="port"+(20000+(100*(slot_Num+1))+(i+1)); if((i%2)==0)
{
switch (slot_PortState[slot_Num+1][i])
{
case 0:
window.document.images[portName].src=image_copper[3].src;
window.document.images[portName1].src=image_fiber[0].src;
break;
case 1:
window.document.images[portName].src=image_copper[4].src;
window.document.images[portName1].src=image_fiber[0].src;
break;
case 2:
window.document.images[portName].src=image_copper[5].src;
window.document.images[portName1].src=image_fiber[0].src;
break;
case 3:
window.document.images[portName].src=image_copper[3].src;
window.document.images[portName1].src=image_fiber[1].src;
break;
case 4:
window.document.images[portName].src=image_copper[3].src;
window.document.images[portName1].src=image_fiber[2].src;
break;
default:
window.alert("Error:cardType "+card_Type+",slot "+(slot_Num+1)+",port "+(i+1)+"!");
break;
}
}
else
{
switch (slot_PortState[slot_Num+1][i])
{
case 0:
window.document.images[portName].src=image_copper[0].src;
window.document.images[portName1].src=image_fiber[0].src;
break;
case 1:
window.document.images[portName].src=image_copper[1].src;
window.document.images[portName1].src=image_fiber[0].src;
break;
case 2:
window.document.images[portName].src=image_copper[2].src;
window.document.images[portName1].src=image_fiber[0].src;
break;
case 3:
window.document.images[portName].src=image_copper[0].src;
window.document.images[portName1].src=image_fiber[1].src;
break;
case 4:
window.document.images[portName].src=image_copper[0].src;
window.document.images[portName1].src=image_fiber[2].src;
break;
default:
window.alert("Error:cardType "+card_Type+",slot "+(slot_Num+1)+",port "+(i+1)+"!");
break;
}
}
}
}
都已经提示了,就是window.document.images[...]不存在,所以不能再“.src”