2012-06-11 66 views
0

我使用下面的代碼來觸發單擊圖像時播放SWF文件。它效果很好,但我想要有多個swf文件,每個swf文件都由不同的圖像觸發。使用JavaScript函數調用播放多個SWF文件

<script language="JavaScript"> 
    function getFlashMovieObject(movieName) 
    { 
     if (window.document[movieName]) 
     { 
      return window.document[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 PlayFlashMovie() 
    { 
     var flashMovie=getFlashMovieObject("Flash1"); 
     flashMovie1.Play();  
    } 
</script> 

那麼電影被觸發:

<div class="buttonimage1" style="background-color: #FFFFFF;"> 
<img src="icon1-small.png" alt="icon 1" onmousedown="PlayFlashMovie();" > 

我想補充這一點,以便(例如)點擊buttonimage2會觸發 「電影2」 和 buttonimage3會觸發「電影3「等...

<div class="buttonimage2" style="background-color: #FFFFFF;"> 
<img src="icon2-small.png" alt="icon 1" onmousedown="PlayFlashMovie();" > 

<div class="buttonimage3" style="background-color: #FFFFFF;"> 
<img src="icon3-small.png" alt="icon 1" onmousedown="PlayFlashMovie();" > 
</div> 

如何爲多個電影名稱設置getFlashMovieOject函數? 我已經嘗試了一些東西,但似乎缺少的東西,我對js很新。 有一點幫助將不勝感激。 感謝

回答

1

你能有PlayFlashMovie功能拍攝參數:

function PlayFlashMovie(name) { 
    var flashMovie=getFlashMovieObject(name); 
    flashMovie.Play(); 
} 

然後通過它像這樣:

<img src="icon1-small.png" alt="icon 1" onmousedown="PlayFlashMovie('Flash1');" > 
<img src="icon2-small.png" alt="icon 2" onmousedown="PlayFlashMovie('Flash2');" > 

+0

這是行不通的。我是否需要將名稱定義爲變量? –

+0

@WilliamSmith不,它是該函數的參數。在您的開發者控制檯中查找Firefox或Chrome的錯誤。 – Esailija

+0

謝謝!我不知道控制檯。這有很大幫助。 –