获取IE对象来控制flash按钮

时间:2012-01-11 12:25:14

标签: javascript jquery html flash internet-explorer

在下面的代码中,闪存中有按钮,我试图通过html按钮访问它。因此,当按下录制按钮时,模式将是“记录”并且record_functions()被调用。我能够在Firefox上工作,但在Internet Explorer中,按钮似乎无法工作,即无法调用闪存功能IE浏览器。请告诉我如何解决此问题

 function thisMovie(movieName)
 {
 if (window.document[movieName])
  {
     return document.getElementById(movieName);
  }
 if (navigator.appName.indexOf("Microsoft Internet")==-1)
  {
    if (document.embeds && document.embeds[movieName])
      return document.embeds[movieName];
   }
  else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
  {
   return document.getElementById(movieName);
   }
  }


 function record_functions(mode)
 {
  if(mode == "record")
  {

     thisMovie("audiorecoding").startRecording();
  }
  else if(mode == "stop")
  {
     thisMovie("audiorecoding").stopRecording();
  }
  else if(mode == "play")
  {
        thisMovie("audiorecoding").playRecording();
  }
  else if(mode == "pause")
  {
        thisMovie("audiorecoding").pauseRecording();
  }
 }

 <input type="button" onclick="record_functions('record')" value="Record" />

2 个答案:

答案 0 :(得分:0)

如果是参考错误(无法找到闪存),则未指定所获得的错误

我建议使用swfobject来返回对象的引用,请查看:http://code.google.com/p/swfobject/

答案 1 :(得分:0)

你应该在IE浏览器上使用id属性,但在其他浏览器中使用name attirbute。

if (navigator.appName.indexOf("Microsoft") == -1)
    swfObject = document["mozillaEmbedName"];
else
    swfObject = window["ieObjectID"];