IE的问题

时间:2010-04-23 18:03:47

标签: javascript internet-explorer

我有以下代码:

function header(){
 experience += '';
 var expimage = '';
 for(var cik=0;cik<experience.length;cik++){
  switch(experience[cik]){
   case '0':
   expimage += 'img0';
   break;
   case '1':
   expimage += 'img1';
      break;
      case '2':
      expimage += 'img2';
      break;
      case '3':
      expimage += 'img3';
      break;
      case '4':
      expimage += 'img4';
      break;
      case '5':
      expimage += 'img5';
      break;
      case '6':
      expimage += 'img6';
      break;
      case '7':
      expimage += 'img7';
      break;
      case '8':
      expimage += 'img8';
      break;
      case '9':
      expimage += 'img9';
      break;
  }
 }
 document.getElementById('level').innerHTML = expimage;
 alert(expimage);
}

但它只适用于chrome或mozilla。它显示一个空的警告框,但它适用于Firefox和Chrome。我尝试在每一行之后提醒每个变量,我注意到问题显示我试图提醒(体验[0]),它显示未定义,其他步骤正常。

2 个答案:

答案 0 :(得分:0)

您能否展示完整的代码和HTML,以便了解您如何调用此方法以及如何定义“体验”?

此外,看起来你可以用以下代码替换你的switch语句:

expimage += 'img' + experience[cik];

答案 1 :(得分:0)

变量experience似乎在使用前没有在任何地方定义。您可能希望将其作为参数传递给函数;你可以修改你的函数来接受这样的参数:

function header(experience) {
    // ....
}

如果没有关于experience是什么以及正在调用header的代码的更多信息,则很难更彻底地回答您的问题。